一个简单的问题:我想将view1
置于view2
layout_centerVertical="true"
RelativeLayout
下android:layout_below="@id/view2"
。显然,<ImageView
android:id="@+id/view2"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:adjustViewBounds="true"
android:padding="10dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:src="@drawable/image1"/>
<ImageView
android:id="@+id/view1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@id/view2"
android:adjustViewBounds="true"
android:src="@drawable/image2" />
不起作用,即使有很多空间可用。
<View
android:id="@+id/view3"
android:layout_width="10dip"
android:layout_height="10dip"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:background="#fff" />
现在,我找到了导致这种情况的原因。我有另一种观点:
android:layout_alignParentBottom="true"
如果此视图具有属性view2
,则相对于view2
的所有内容(居中视图)在布局中都会变得疯狂(消失),但奇怪的是,android:layout_alignParentBottom="false"
保持不动。如果我改为view3
,一切都会恢复正常。我不明白,{{1}}与其他观点无关。有什么规则我不尊重吗?请帮我。任何答案都将不胜感激。
答案 0 :(得分:0)
我建议使用tableLayout
或GridLAyout
。
类似的东西:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
<TableLayout
android:gravity="center_vertical" > // <-- that one is required!
<TableRow
android:gravity="center">
<TextView />
<ToggleButton />
</TableRow>
<TableRow >
<TextView />
<EditText />
</TableRow>
</TableLayout>
</LinearLayout>