0

我尝试获取包含的布局的根视图(包含标签)。它不是我使用的初始相对布局,而是返回电话窗口装饰视图。它是什么?怎么不在相对布局下?

结构如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:tag="rlMain"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:background="@color/lightest_gray"> 

  <include layout="@layout/include_attachment_options" />

</RelativeLayout>
4

2 回答 2

0
  1. 简而言之,装饰视图是您在活动布局膨胀之前看到的内容。通常,它只是一个白屏。

  2. 为了获得包含布局的根视图,您应该在布局文件 (include_attachment_options.xml) 中给它一个 ID,然后像这样查找它:

    相对布局 rl = (RelativeLayout) findViewById(R.id.root_layout);

于 2016-07-14T07:56:41.903 回答
0

您如何尝试获取根视图?
Phone Window Decor 视图是顶级视图,其他所有内容(您的活动)都是该视图的子视图。
参考:https ://developer.android.com/reference/android/view/Window.html

顶级窗口外观和行为策略的抽象基类。此类的实例应用作添加到窗口管理器的顶级视图。它提供了标准的 UI 策略,例如背景、标题区域、默认键处理等。

此抽象类的唯一现有实现是 android.view.PhoneWindow,您应该在需要 Window 时对其进行实例化。

如果您想获得完整的视图层次结构,请尝试 UI Automator Viewer。

于 2016-07-14T07:47:41.173 回答