Подключите нашего Telegram-бота для уведомлений о новых проектах
Заказчик
Отзывы фрилансеров:
+ 4
- 0
Зарегистрирован на сайте 9 лет и 3 месяца
Бюджет:
по договоренности
Приветствую! Код ниже нужен для запуска run() функции скрытия блока, когда клавиатура убирается с экрана (меняется высота экрана). Если клавиатура убирается (запускается run()) когда поле ввода потеряло фокус это нормально, но если например мне позвонили и я находился в приложении клавиатура тоже убирается и запускается run() это не нормально. Потому что если по окончании вызова вернутся в приложение блок будет скрыт. Нужно чтобы блок скрывался только при намеренном действии.
final View activityRootView = findViewById(R.id.webView); // получаем ID лайота (нужно указать)
activityRootView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { // ставим "прослушку" на лайот
private int lastHeight;// предыдущее значение высоты
@Override
public void onGlobalLayout() {
if (lastHeight == 0) { // если не определено, то определить (1-ый вызов метода)
lastHeight = activityRootView.getHeight();
}
// проверка на то, что предыдущее значение меньше текущего
// если разница более 100, то значит, была закрыта клавиатура
if (lastHeight <> 100) {
WebView vw = (WebView) findViewById(R.id.webView);
vw.loadUrl("javascript:run()");
}
lastHeight = activityRootView.getHeight(); // установка предыдущего значения
}
});
Разделы:
Опубликован:
06.01.2016 | 16:31
Теги: нужен программист, ищу программиста, резюме программиста, требуется разработка мобильных приложений