工具:ignore =“UselessParent”在Android XML布局文件中是什么意思?

时间:2014-01-07 14:06:03

标签: android layout lint

代码段:

 <LinearLayout
        android:id="@+id/fullscreen_content_controls"
        style="?buttonBarStyle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|center_horizontal"
        android:background="@color/black_overlay"
        android:orientation="horizontal"
        tools:ignore="UselessParent" >

        <Button
            android:id="@+id/dummy_button"
            style="?buttonBarButtonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="@string/dummy_button" />
   </LinearLayout>

我不确定tools:ignore="UselessParent"是什么意思。这是否意味着当lint发现Button填充LinearLayout时,LinearLayout将被移除,Button将移动到父级并让视图层次结构高效?非常感谢!

2 个答案:

答案 0 :(得分:7)

在你的情况下

tools:ignore="UselessParent"

告诉您的IDE避免显示如下消息:“此RelativeLayout布局或其LinearLayout父级无效”

考虑这种情况:

<LinearLayout
    android:id="@+id/detailLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" >

        <Button
            android:id="@+id/downloadFormsButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_margin="10dp"
            android:enabled="false"
            android:text="@string/download_forms_button" />

        <TextView
            android:id="@+id/formErrorMsg"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_alignParentRight="true"
            android:padding="10dp"
            android:textSize="16dp" >
        </TextView>
    </RelativeLayout>
</LinearLayout>

内部RelativeLayout显示LINT错误消息。

要避免出现警告消息,请转到Build Path-&gt; Configure Build Path ....在Android Lint Preferences下查找UselessParent,并将其严重性设置为忽略。

什么是LINT?看这里:

http://developer.android.com/tools/help/lint.html

<强>更新

IDE使用前缀tools:,并且在编译项目时不会考虑它。

答案 1 :(得分:0)

UselessParent是一个Android lint问题标识符,用于检查是否可以删除父布局。

tools:ignore="UselessParent"禁止检查指定元素及其子元素,以防您想要抑制lint消息。