【发布时间】:2014-07-26 18:31:57
【问题描述】:
我的 Android 项目中的特定视图出现警告。 这是什么意思?如何解决?
第 10 行警告:“FrameLayout”
这个 FrameLayout 布局或者它的 LinearLayout 父级是没用的;将背景属性转移到另一个视图 Android Lint 问题
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/stepLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/paper"
android:orientation="vertical" >
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<ImageView
android:id="@+id/example_image"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:contentDescription="@string/descExample" />
<ImageButton
android:id="@+id/buttonNext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|bottom"
android:layout_margin="5dip"
android:background="@android:color/transparent"
android:contentDescription="@string/descButtonNext"
android:padding="5dip"
android:src="@drawable/nav_next_40"
android:text="@string/buttonNext" />
<ImageButton
android:id="@+id/buttonPrevious"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|bottom"
android:layout_margin="5dip"
android:background="@android:color/transparent"
android:contentDescription="@string/descButtonPrevious"
android:padding="5dip"
android:src="@drawable/nav_previous_40"
android:text="@string/buttonPrevious" />
<ImageButton
android:id="@+id/buttonHome"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center|bottom"
android:layout_margin="5dip"
android:background="@android:color/transparent"
android:contentDescription="@string/descButtonHome"
android:padding="5dip"
android:src="@drawable/nav_home_40"
android:text="@string/buttonHome" />
<ImageButton
android:id="@+id/buttonShare"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|bottom"
android:layout_margin="5dip"
android:background="@android:color/transparent"
android:contentDescription="@string/descButtonShare"
android:padding="5dip"
android:src="@drawable/nav_share_40"
android:text="@string/buttonShare" />
</FrameLayout>
</LinearLayout>
【问题讨论】:
-
Dimitri,也就是说,你只在FrameLayout里面声明了你的所有属性,所以不需要LinearLayout,你的主要LinearLayout什么也没做,所有的东西都在做FrameLayout,这就是你得到它的原因警告。
-
移除LinearLayout并将FrameLayout设为父Layout。LinearLayout适用于多个子视图。但对你来说它只有一个子
-
请简化你的布局,为了表演!通过简化进行优化。