2016-12-26 8 views
0

Во-первых, я доволен настройками моей деятельности android:windowSoftInputMode="adjustNothing". Я не хочу, чтобы на нижней части экрана ничего не предлагалось, когда клавиатура встала. Вместо этого я хочу «приостановить» (или вызвать методы onPause()) фрагментов, которые полностью блокируются с помощью мягкой клавиатуры, а затем возобновить их, когда они не видны.Почему Android не останавливает фрагмент, чей вид полностью заблокирован с помощью мягкой клавиатуры?

По крайней мере, я ожидал, что фрагменты сделают это сами. Но из docs, похоже, что onPause() обычно связан с onPause() родительской активности.

Из других вопросов, связанных с ответами здесь и в других местах, я понимаю, что нет простого способа получить состояние мягкой клавиатуры. И даже делая это с помощью крюка или мошенника, я не хочу называть onPause() и onResume() вручную для каждого предполагаемого фрагмента.

Итак, мой практический вопрос: Можно ли сделать любой фрагмент самосознающим, когда его вид заблокирован мягкой клавиатурой? Если да, то как?

И да, я хочу понять, есть ли веские причины, по которым Android не вызывает onPause() для фрагментов, чьи представления полностью заблокированы, в отличие от этого для onPause(). Я понимаю, что это не делает даже для активности в случае мягкой клавиатуры. Я чувствую, что полная блокировка (преднамеренно или непреднамеренно) с помощью чего-либо, такого как мягкая клавиатура, должна иметь некоторое влияние на жизненный цикл активного представления.

Я надеюсь, что это не gushingly отметился дублем, так как я не прошу, чтобы знать состояние мягкой клавиатуры в деятельности, по крайней мере, непосредственно :)

+0

«возможно ли сделать любой фрагмент самонадеянным, когда его представление блокируется с помощью мягкой клавиатуры?» -- Не то, чтобы я в курсе. – CommonsWare

ответ

1

Поскольку клавиатура не является ни активности не домашний экран , Тот же эффект появляется, когда вы выставляете строку уведомлений о новостях

+0

Полезно знать. Но не отвечает, почему он разработан так, и как достичь того, чего я хочу достичь. –