Получение в настоящее время установленного представления содержимого - PullRequest
1 голос
/ 06 февраля 2012

Мы создаем приложение с двумя основными представлениями: sView и sViewSettings. Если кнопка Android Back нажата, мы хотим, чтобы в статической проверке было проверено, установлено ли текущее представление в настройках sView, а затем вызывается sView.

У вас уже есть настройка прослушивателя для кнопки "назад", просто нужно вызвать оператор if для проверки текущего представления.

уже пробовал if (this.findViewById (android.R.id.content) == sViewSettings)

Есть идеи по этому поводу?

Спасибо за чтение, Travis

1 Ответ

2 голосов
/ 06 февраля 2012

Представление с идентификатором android.R.id.content - это FrameLayout, содержащее ваше представление содержимого. Попробуйте это:

ViewGroup contentFrame = (ViewGroup) findViewById(android.R.id.content);
if (contentFrame.getChild(0) == sViewSettings) { ... }

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

РЕДАКТИРОВАТЬ: если вы хотите, чтобы ваши макеты загружались отдельно, вы можете назначить (тот же самый) идентификатор корневому представлению каждого макета, а затем получить представление контента непосредственно, используя findViewById.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...