Как получить макет и элементы внутри ViewStub (сгенерированные из SDK) в android программным путем? - PullRequest
0 голосов
/ 07 февраля 2020

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

  • 1) Мой домашний экран (android.view.ViewRootImpl@e33bea5: DecorView@82c1e88[Dashboard])
  • 2) Тост успеха при входе (Toast/android.view.ViewRootImpl@8bca27a: android.widget.LinearLayout)
  • 3) com.PopupActivity/android.view.ViewRootImpl@62e8a2b: DecorView@d099e07[PopupActivity]

Третий (PopupActivity) имеет 2 детей:

  • 1) ViewStub
  • 2) ImageButton

Я могу получить доступ к ImageButton как, ((ImageButton)obj).performClick(); но я не могу получить доступ к содержимому ViewStub. ViewStub имеет только несколько методов, таких как getInflaterId(), getLayoutResource() и др. c.

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

Теперь, как мне получить доступ к содержимому ViewStub?

...