Почему нет метода getContentView () для Activity?

Класс Activity имеет метод setContentView() . Класс PopupWindow имеет метод getContentView() но ничего больше. Есть ли другой способ получить основное представление контента для активности?

Мне удалось добраться до содержимого Activity с помощью этого вызова:

 ViewGroup view = (ViewGroup)getWindow().getDecorView(); 

Вероятно, вы должны проверить, что getDecorView возвращает экземпляр ViewGroup для всех случаев, но с LinearLayout в Activity код выше работает нормально. Чтобы добраться до LinearLayout, вы могли бы просто:

 LinearLayout content = (LinearLayout)view.getChildAt(0); 

И если у вас есть такая функция:

 void logContentView(View parent, String indent) { Log.i("test", indent + parent.getClass().getName()); if (parent instanceof ViewGroup) { ViewGroup group = (ViewGroup)parent; for (int i = 0; i < group.getChildCount(); i++) logContentView(group.getChildAt(i), indent + " "); } } 

Вы можете перебирать все виды и записывать имена их classов со следующим вызовом внутри вашей операции:

 logContentView(getWindow().getDecorView(), ""); 

Следующая строка сделает трюк:

 findViewById(android.R.id.content); 

она по существу такая же, как (ее нужно вызвать в контексте Activity)

 this.findViewById(android.R.id.content); 

Я тоже ищу это, но я просто подумал, что было бы проще добавить id во внешнюю ViewGroup.

   

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

  • Не удалось найти следующие classы: android.support.v7.internal.app.WindowDecorActionBar
  • Как добавить переключатель в панель действий Android?
  • Android и получение представления с литой идентификатором в виде строки
  • Как установить фоновый рисунок кнопки изображения для разных состояний?
  • Android: установите цвет CheckBox
  • Как сделать повторное фоновое изображение приложения
  • DIV против таблиц или CSS против того, чтобы быть глупым
  • Эффект fitsSystemWindows пропал для fragmentов, добавленных через FragmentTransaction
  • Какова цель тега Android в XML-макетах?
  • Android: установить стиль просмотра программно
  • Высота вложенного ресайклера не обтекает его содержимое
  • Давайте будем гением компьютера.