Android Как сделать только часть экрана интерактивной?

Я собираюсь написать пошаговое руководство для моего приложения.

Я желаю, чтобы пользователь следовал шагу учебника. Поэтому я хочу заставить пользователя нажимать на определенную кнопку, но не на другие части приложения.

В моем приложении много компонентов пользовательского интерфейса, и некоторые из них добавляются программно, поэтому отключать их по одному нецелесообразно.

Одним из немедленных решений является то, что я делаю прозрачное действие, чтобы покрыть исходное действие. Но я не знаю, как мне обнаружить событие касания через оверлейное действие, чтобы управлять исходным действием.

Или есть ли лучший способ сделать пошаговое руководство для приложений Android без особого влияния на исходный код? Учебное пособие - это функция adhoc, и я не хочу, чтобы эти функции adhoc разрушали мой код с большим количеством операторов if в каждом действии.

Спасибо.

2 ответа

Решение

Деятельность не будет работать. Только тот, кто находится наверху стека, может обрабатывать информацию.

Просто добавьте полупрозрачный вид над экраном, используя относительное расположение

Затем просто следите за событием касания этого представления. Если касание находится в принятой зоне учебника, то дайте ему всплыть под контроль. Если if находится за пределами принятой зоны, используйте событие.

Button btn = new Button(getActivity());

btn.setText("Next");

// Adding  button to bottom
lv.addFooterView(btn);
Другие вопросы по тегам