2011-11-23 2 views
0

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

Я думаю, что из-за диалога активность не может получить событие касания пользователя .. так есть способ включить пользовательский сенсор для того же самого?

Спасибо ...

ответ

1

Dialog реализован в виде прозрачной деятельности с диалоговой темой, поэтому не пытается получить обработчик заднего экрана. вместо того, чтобы заменить диалог на вид и shitch обзорности просмотров VISIBLE/INVISIBLE/GONE

+0

Ничего страшного, это помогло мне ... – Sanniv

+0

На самом деле, я попытался вызвать backActivity.dispatchTouchEvent() из dispatchTouch моего класса, который расширяет диалог и касается его работы. – sandrstar

+0

@sandrstar: Не могли бы вы объяснить это немного больше? –

0

Есть некоторые полезные Window флаги для этого

WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE и/или FLAG_NOT_FOCUSABLE редких случаях, как у меня - нет прикосновений в всплывающем окне

WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL, чтобы прикосновение сзади, а также в диалоговом

вы бы установить их с помощью dialog.window.addFlags(..) или, если вы знаете, что вы делаете, dialog.window.setFlags(..). (Это синтаксис Kotlin)

Смежные вопросы