这个问题末尾的答案已经填写完整,结合了评论和解决方案.
我四处搜索,但没有发现任何真正解释为什么Android Lint以及一些Eclipse提示建议用一些layout_height和layout_width值替换0dp.
例如,我有一个ListView建议改变
之前
<ListView
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1">
</ListView>
Run Code Online (Sandbox Code Playgroud)
后
<ListView
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
</ListView>
Run Code Online (Sandbox Code Playgroud)
同样,它建议更改ListView项.这些在变化之前和之后看起来都一样,但我有兴趣理解为什么这些是性能提升器.
任何人都有解释原因?如果它有帮助,这里是一般布局ListView.
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:id="@+id/logo_splash"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</ImageView>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@color/background"
android:layout_below="@id/logo_splash">
<ListView
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
</ListView>
<TextView
android:id="@android:id/empty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/no_upcoming" />
</LinearLayout>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
我在这里给出答案,因为它实际上是答案和下面引用的链接的组合.如果我对某事有误,请告诉我.
来自0dip layout_height或layouth_width的诀窍是什么?
有3种常规布局属性可用于宽度和高度
android:layout_heightandroid:layout_widthandroid:layout_weight …我正在尝试一个接一个地设置两个图标(共享和心形图标),并且奇怪地右对齐一个没有显示。像这样的东西:
我正在尝试所有方法,但无法实现。可能有什么问题。以下是我正在查看的内容:
我试过的代码:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="390dp"
android:id="@+id/imageRelativeLayout"
android:visibility="visible"
android:background="@android:color/white">
<TextView
android:id="@+id/labelProductModel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4dp"
android:layout_marginTop="4dp"
android:ellipsize="end"
android:visibility="visible"
android:ems="12"
android:text="Product Code"
android:textSize="12sp" />
<TextView
android:id="@+id/labelProductName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4dp"
android:layout_below="@+id/labelProductModel"
android:ellipsize="end"
android:ems="12"
android:visibility="visible"
android:text="Product Name"
android:textSize="16sp"/>
<ImageView
android:id="@+id/imageProduct"
android:layout_width="match_parent"
android:layout_height="220dp"
android:layout_below="@+id/labelProductName"
android:src="@drawable/action_video"
android:contentDescription="@string/app_name"
android:padding="4dp"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_alignParentBottom="true"
android:layout_below="@+id/imageProduct"
android:gravity="left">
<android.support.v7.widget.RecyclerView
android:id="@+id/listImages"
android:layout_width="wrap_content"
android:layout_height="200dp"
android:paddingLeft="4dp"
android:paddingRight="4dp"
android:visibility="visible"/>
</LinearLayout>
<ImageView
android:layout_width="35dp"
android:layout_height="35dp"
android:id="@+id/shareImage"
android:paddingTop="5dp"
android:contentDescription="@string/app_name"
android:visibility="visible"
android:src="@drawable/ic_share"/>
<ImageView
android:layout_width="35dp"
android:layout_height="35dp"
android:contentDescription="@string/app_name"
android:layout_toRightOf="@+id/shareImage"
android:id="@+id/favImage"
android:visibility="visible"
android:src="@drawable/ic_heart"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)