我正在制作一个新闻应用程序。我很好地解释了我的2个线性布局相互重叠的事实。我尝试在每个子视图上设置width = o
和weight = 1
,但它给了我一个错误:"1dp"与属性android:layout_weight
(attr(float不兼容。这是我的xml代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="2"
>
<LinearLayout
android:id="@+id/linear"
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_width="0dp"
android:layout_weight="1dp"
tools:ignore="Suspicious0dp">
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:id="@+id/selection" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_weight="1dp"
android:layout_height="match_parent"
android:orientation="vertical"
tools:ignore="Suspicious0dp">
<TextView
android:id="@+id/publicationDate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
</LinearLayout>
使用android:layout_weight="1"
而不是1dp
layout_weight
的大小与父布局有关,与dp
单元无关
您应该像这样为每个linearlayout 添加它
android:layout_weight="1"
根据父布局方向为每个子视图放置android:layout_weight="1"
,如果是水平的,则子视图应具有android:layout_width="0dp"
,否则为android:layout_height="0dp"
。