对如下布局:
----------------------------------------
| LinearLayout |
----------------------------------------
| |
| |
| |
| ScrollView |
| |
| |
| |
| |
| |
----------------------------------------
| LinearLayout |
----------------------------------------
想达到的效果是上下各有一固定宽高的LinearLayout, 中间是一个ScrollView,ScrollView随着其中内容的多少可长可短.
这布局的特殊性是底部有一LinearLayout要始终显示出来,而不是在长长的ScrollView的后面(如果ScrollView较长的话,在第一屏就会一眼看不到底部的Linearlayout)。
如何实现呢?
其实很简单,给ScrollView加上以下属性
android:fillViewPort="true"
android:layout_weight="1"
android:fillViewport
Defines whether the scrollview should stretch its content to fill the viewport.
该属性决定当其内容宽高不足以填满可以区域时,是否将ScrollView将其内容区域拉伸以至填满可见区域。
android:layout_weight="1" 而上下LinearLayout不设置android:layout_weight属性,即默认为0,这样,ScrollView即老填满占据上下LinearLayout以外的中间空间。
分享到:
相关推荐
ScrollView的`layout_weight`属性设置为2,因此占据剩余的2/3空间。ScrollView内部还有一个垂直的LinearLayout,包含多个ImageView,用于显示内蒙古的各个季节图片。`scaleType="fitXY"`确保图片按比例填充ImageView...
或者,如果支持Android 4.4(KitKat)及以上版本,可以使用NestedScrollView替代ScrollView,NestedScrollView更适合作为可滚动视图的容器,它能更好地处理与滑动相关的交互,包括嵌套滑动。 ```xml android:...
为了实现上部分与下部分1:2的比例,可以使用权重(weight)属性。给TextView分配权重1,给滚动视图分配权重2: ```xml android:layout_weight="1" ... /> <ScrollView android:layout_weight="2" ... /> ``` ...
关键属性有`orientation`(设置布局方向,可选垂直或水平)、`weight`(分配子视图的额外空间比例)以及`layout_gravity`(设置子视图在父视图中的位置)。 2. **RelativeLayout**:相对布局允许子视图相对于其他...
android:layout_weight="1" android:layout_height="fill_parent" android:layout_width="fill_parent"> </ScrollView> android:background="@android:color/black" android:layout_gravity="bottom" ...
2. `android:layout_weight`:分配给子视图的权重,用于决定剩余空间的分配。 二、RelativeLayout RelativeLayout允许视图相对其他视图进行定位。常用属性: 1. `android:layout_alignParent*`:如`layout_...
android:layout_weight="1"> android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <!-- 这里放置你的内容视图,例如TextView、EditText等 --> ...
如果给它们分别设置`layout_weight="1"`, `layout_weight="1"`, `layout_weight="2"`,则在容器中,这三个`TextView`的宽度比例将会是1:1:2。 - 这个属性常用于动态调整布局元素的大小,特别是在需要根据屏幕尺寸...
android:layout_weight="1"> android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:padding="16dp"> <!-- Add your content views here --...
android:layout_weight="1" android:fillViewport="true"> android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:padding="8dp"> <!-- 在...
`layout_width`和`layout_height`属性值为`wrap_content`表示控件大小仅包裹内容,而`layout_weight`属性用于分配额外的空间,当所有控件的宽度或高度不足以填充整个父布局时,会根据`layout_weight`的比例分配多余...
`android:layout_weight`属性用于分配空间,这里设置了为8,表示该部分占据总高度的80%。 在ScrollView内部,我们又嵌套了一个竖直的LinearLayout,用于放置图片和两个TextView。ImageView用于展示美食图片,而...
这种设计通常应用于目录与内容、分类与商品等场景。下面将详细解释如何实现这样的功能。 首先,我们需要创建两个ListView,一个用于显示左侧的列表,另一个用于显示右侧的列表。这两个ListView通常会放置在一个...
android:layout_weight="1" android:fillViewport="true"> android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:padding="16dp"> <!-- ...
每个子视图可以通过`android:layout_weight`属性来分配权重,以实现灵活的尺寸分配。 2. **RelativeLayout**:相对布局允许视图相对于其他视图的位置进行定位。通过`android:layout_above`, `android:layout_...
每个子视图可以通过权重`android:layout_weight`来分配空间,权重越高,占用的空间越大。 二、相对布局(RelativeLayout) 相对布局允许子视图相对于其他视图的位置进行定位。通过`android:layout_alignParentXXX`...
自Android 5.0 (API level 21)开始,ScrollView支持嵌套滑动,这意味着它可以与其他滚动视图(如NestedScrollView或RecyclerView)无缝协作。启用嵌套滑动可以通过设置`app:nestedScrollingEnabled="true"`来实现。...
与普通的`ScrollView`不同,`HorizontalScrollView`主要处理水平方向上的滚动事件。 2. **自定义View**: 为了实现这个体重标尺,开发者可能创建了一个自定义的View类,扩展了`View`或`ViewGroup`,并添加了体重标尺...
可以设置weight属性来分配视图的权重,实现灵活的布局。 2. **相对布局(RelativeLayout)**:视图的位置相对于其他视图。通过设置如alignParentLeft、above、below等属性,实现视图之间的相对定位。 3. **帧布局...