我的观点如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:paddingTop="0dp"
android:paddingLeft="0dp"
android:paddingRight="0dp"
android:paddingBottom="10dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout android:id="@+id/header"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:orientation="horizontal"
android:paddingTop="5dp"
android:paddingBottom="10dp"
android:paddingLeft="15dp"
android:paddingRight="15dp">
<ImageView android:id="@+id/title_icon"
android:layout_width="12dp"
android:layout_height="12dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_gravity="center_vertical"
android:src="@drawable/title_icon" />
<LinearLayout android:id="@+id/title_layout"
android:layout_toRightOf="@id/title_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_gravity="center_vertical"
android:layout_marginLeft="10dp"
android:orientation="vertical" >
<TextView android:id="@+id/title_text"
android:text="@string/activity_complete"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_gravity="center_vertical"
android:paddingRight="15dp"
android:textSize="12dp"
android:textStyle="bold"/>
</LinearLayout>
<TextView android:id="@+id/status_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:textSize="8dp" />
</RelativeLayout>
<TextView android:id="@+id/message_text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="5dp"
android:layout_marginLeft="0dp"
android:layout_marginRight="0dp"
android:layout_marginBottom="5dp"
android:paddingLeft="15dp"
android:textSize="10dp"/>
<ImageView android:id="@+id/main_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/grey"
android:padding="5dp"/>
</LinearLayout>
我的问题是主要的LinearLayout视图不匹配_parent或fill_parent。它似乎只想包含其中的最小项目。在我的情况下,它将导致与main_image相同的宽度,切断其他所有内容。但是,如果我将main_image设置为visibility.gone,那么它将匹配message_text的宽度。
我已经尝试删除除main_image之外的所有内容,主要的LinearLayout仍然只适合图像宽度。
另一件事是这个布局被膨胀到另一个设置为fill_parent的LinearLayout。
答案 0 :(得分:3)
将ImageView包装在另一个LinearLayout中解决了这个问题。
答案 1 :(得分:2)
我遇到了这个问题 - 将配置为“match_parent”的LinearLayout添加到另一个LinearLayout,但内部布局没有正确填充外部布局。
最初我这样做是为了添加布局:
LinearLayout inner = getLayoutInflater().inflate(R.layout.inner, null);
outer.addView(inner, 0);
经过几分钟的愤怒之后,我试了一下:
LinearLayout inner = getLayoutInflater().inflate(R.layout.inner, outer);
inner
与outer
父级宽度和高度匹配。