Android layout LinearLayout赢得';t填写家长;相反,如果适合其中的最小宽度视图
我有这样一个观点:Android layout LinearLayout赢得';t填写家长;相反,如果适合其中的最小宽度视图,android-layout,Android Layout,我有这样一个观点: <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
<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>
我的问题是,main LinearLayout视图与\u parent或fill\u parent不匹配。它似乎只想包含其中最小的项。在我的例子中,它将导致一个与主图像相同的宽度,切断所有其他内容。但是,如果我将main_image设置为visibility.gone,那么它将匹配消息文本的宽度
我尝试删除除主图像之外的所有内容,主线性布局仍然只适合图像宽度
另一件事是,此布局膨胀到另一个线性布局中,该布局设置为填充父对象。将图像视图包装到另一个线性布局中修复了此问题 我刚刚遇到了这个问题--将配置为“匹配父对象”的LinearLayout添加到另一个LinearLayout,但内部布局没有正确填充外部布局 最初,我这样做是为了添加布局:
LinearLayout inner = getLayoutInflater().inflate(R.layout.inner, null);
outer.addView(inner, 0);
在几分钟的愤怒之后,我尝试了以下方法:
LinearLayout inner = getLayoutInflater().inflate(R.layout.inner, outer);
而
内部
与外部
父级宽度和高度相匹配。这似乎只在某些时候是必要的,但我不知道条件是什么。