我正在尝试在同一个'滚动'中获取图像和列表(我不知道如何放置它)。我的基本(垂直)布局是:
的TextView
ImageView的
的ListView
我正在尝试滚动,就像图像本身就是一个列表项一样。所以textview必须保持在顶部,其他一切都必须在它下滚动。
目前我有以下代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/background"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/app_purple"
android:orientation="vertical" >
<TextView
android:id="@+id/about_app_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:padding="15dp"
android:text="@string/about_app_label"
android:textColor="@color/background"
android:textSize="20dp"
android:textStyle="bold" />
<ImageView
android:id="@+id/app_logo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:src="@drawable/logo" />
</LinearLayout>
<ListView
android:id="@+id/information_list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/background"
android:divider="@drawable/listdivider"
android:dividerHeight="1dp"
android:fadingEdge="none" >
<!-- Preview: listitem=@layout/row -->
</ListView>
非常感谢任何帮助!
修改
listView的自定义行布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/listview"
android:orientation="horizontal"
android:padding="4dip" >
<ImageView
android:id="@+id/list_icon"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:adjustViewBounds="true"
android:layout_marginRight="5dp"
android:contentDescription="@string/icon_content_description" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/list_label"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:maxLines="1"
android:paddingBottom="5dp"
android:paddingTop="5dp"
android:textColor="@color/result_label"
android:textStyle="bold" />
<TextView
android:id="@+id/list_count"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/list_label"
android:ellipsize="end"
android:gravity="center_vertical"
android:maxLines="1"
android:textColor="@color/text" />
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/list_result"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:textColor="@color/text"
android:textColorLink="@color/app_purple" />
<ProgressBar
android:id="@+id/list_progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:gravity="center_vertical"
android:visibility="gone" />
</RelativeLayout>
</LinearLayout>
答案 0 :(得分:2)
你会有一个垂直LinearLayout
持有固定的TextView
和ListView
。您的ImageView
将是ListView
上的标题,通过addHeaderView()
添加。标题,尽管名称,但滚动ListView
。
答案 1 :(得分:1)
要创建自定义列表视图,您需要创建一个single_list_item.xml文件来排列要滚动的所有内容,例如旁边带有描述文本的图像。您还需要在Xml文件上添加ListView,以便程序可以处理视图。而且,他们可以使用适配器处理java文件中的所有内容。列表将显示在文本的底部。
有一个很好的例子,说明如何here
答案 2 :(得分:0)
目前尚不清楚你究竟想做什么。 ScrolView只能有一个孩子。所以我想你应该将ImageView和Listview放在LinearLayout中。 但无论如何 - 将Listview放在ScrollView中是一个坏主意 - 操作系统现在将如何滚动? ListItem或整个列表。如果你可以更具体 - 我可以尝试更多帮助...