线性布局如何处理空视图?
How does Linear Layout behaves with empty views?
在线性布局中,嵌套小部件 horizontaly/vertically 并根据它们 width/height.
排列
我的问题如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
>
<View
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#ffff0000"
/>
<View
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#ff00ff00"
/>
</LinearLayout>
</LinearLayout>
为什么我只看到第一个视图?我很期待,因为它们 wrap_content 要么都显示,要么 none。但我在设计预览中看到:
此外,如果我在第一个 View
中添加 android:layout_weight="2"
,在第二个中添加 android:layout_weight="1"
,即使我添加 [,第二个视图也会获得 space 的 2/3 =25=]=3 在封闭布局中
您只看到一个视图,因为您没有为视图指定数字宽度。
因此,第一个视图占据了整个屏幕,而另一个视图则根本看不到 - 它在右侧,紧挨着红色视图。
如果您希望它们都具有相同的宽度,只需赋予它们相同的权重,这样它们就会彼此相等并且适合屏幕的高度或宽度,具体取决于布局方向容器。
来自文档:
android:weightSum - Defines the maximum weight sum. If unspecified, the sum is computed by
adding the layout_weight of all of the children.
在线性布局中,嵌套小部件 horizontaly/vertically 并根据它们 width/height.
排列
我的问题如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
>
<View
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#ffff0000"
/>
<View
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#ff00ff00"
/>
</LinearLayout>
</LinearLayout>
为什么我只看到第一个视图?我很期待,因为它们 wrap_content 要么都显示,要么 none。但我在设计预览中看到:
此外,如果我在第一个 View
中添加 android:layout_weight="2"
,在第二个中添加 android:layout_weight="1"
,即使我添加 [,第二个视图也会获得 space 的 2/3 =25=]=3 在封闭布局中
您只看到一个视图,因为您没有为视图指定数字宽度。 因此,第一个视图占据了整个屏幕,而另一个视图则根本看不到 - 它在右侧,紧挨着红色视图。
如果您希望它们都具有相同的宽度,只需赋予它们相同的权重,这样它们就会彼此相等并且适合屏幕的高度或宽度,具体取决于布局方向容器。
来自文档:
android:weightSum - Defines the maximum weight sum. If unspecified, the sum is computed by adding the layout_weight of all of the children.