我需要一个Android Activity,它应该显示一个字段,如带有图像的标题和几个动态生成的项目(我认为1到100)。 如果我不想让headsection滚动,我会使用LinearLayout并将headsection布局放入其中。在这下面,我会添加一个ListView来滚动项目,但我希望将headsection滚动到列表的顶部。 我应该把这些东西放在ScrollView中还是有更好的主意?
答案 0 :(得分:2)
should show a field like a headline with an image and several dynamic generated items (1 to 100 I think)
- 使用ListView,因为它可以回收视图(效率原因)。此外,更改和维护列表适配器比复杂的UI结构更容易。
If I would not want the headsection to scroll, I would use a LinearLayout and put the headsection layout in it.
- 为什么不使用顶部有标题的RelativeLayout
,而且列表占据其余高度。这样就可以获得预期的结果。
but I want the headsection to be scrolled to, as a top of the list
- 然后设置列表标题,或在列表视图中使用不同的视图,让您的第一个项目看起来与众不同。有关此主题的更多信息 - 请在Google中搜索android listview different views
。
无论采用哪种方式 - 使用ListView
!
答案 1 :(得分:0)
让一个带有LinearLayout的ScrollView作为它的孩子,并将你的东西放入LinearLayout。请记住,ScrollViews只能有一个子布局。这应该工作正常。像这样:
ScrollView android:id="@+id/ScrollView02"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/aboutFormLinearLayout"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFFFFF">
<TextView android:id="@+id/aboutFormVersionDescription"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:gravity="center"
android:singleLine="true"
android:text ="Version: "
android:textSize="15sp"
android:textColor="#000000"/>
<TextView android:id="@+id/aboutFormVersion"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:gravity="center"
android:singleLine="false"
android:textSize="20sp"
android:textColor = "#000000"
android:layout_marginBottom ="20sp"/>
<TextView android:id="@+id/aboutFormCompanyDescription"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:gravity="center"
android:singleLine="true"
android:textSize="15sp"
android:text ="Company: "
android:textColor="#000000"/>
<TextView android:id="@+id/aboutFormCompany"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:gravity="center"
android:singleLine="false"
android:textSize="20sp"
android:textColor = "#000000"
android:layout_marginBottom ="20sp"
/>
</LinearLayout>