我有布局我想使用滚动视图。在滚动视图旁边有一个列表视图,它有固定的9项,所以我希望这9个项目应该显示在整个页面上,其余的部分都在滚动内观点。
我的XML文件:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<LinearLayout
android:id="@+id/headerLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:background="@drawable/top_bg"
android:orientation="horizontal" >
<ImageView
android:id="@+id/back_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginTop="5dp"
android:onClick="goBack"
android:src="@drawable/back_button" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="75dp"
android:layout_marginTop="10dp"
android:text="Traveller Details"
android:textColor="@android:color/white" />
</LinearLayout>
<ScrollView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="center"
android:layout_below="@+id/headerLayout"
android:fillViewport="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:id="@+id/tittleLayout"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_marginTop="5dp"
android:orientation="vertical" >
<TextView
android:id="@+id/TittleTravellerDetails"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginTop="5dp"
android:gravity="left"
android:text="Traveller Details" />
<View
android:layout_width="wrap_content"
android:layout_height="2dip"
android:layout_marginTop="2dp"
android:background="#FF909090" />
</LinearLayout>
<LinearLayout
android:id="@+id/passengerDetails"
android:layout_below="@+id/tittleLayout"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:orientation="vertical">
<Spinner
android:id="@+id/Tittle"
android:layout_width="290dp"
android:layout_marginLeft="5dp"
android:layout_marginTop="5dp"
android:visibility="gone"
android:layout_height="wrap_content"/>
<EditText
android:id="@+id/firstName"
android:layout_width="290dp"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginTop="10dp"
android:maxLines="1"
android:hint="First Name" />
<EditText
android:id="@+id/LastName"
android:layout_width="290dp"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginTop="10dp"
android:maxLines="1"
android:hint="Last Name" />
<ListView
android:id="@+id/passengerList"
android:layout_width="290dp"
android:layout_height="166dp"
android:layout_marginLeft="5dp"
android:layout_marginTop="10dp"
android:visibility="gone"
android:choiceMode="singleChoice" />
</LinearLayout>
<LinearLayout
android:id="@+id/ContactDetailsLayout"
android:layout_below="@+id/passengerDetails"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_marginTop="10dp"
android:orientation="vertical" >
<TextView
android:id="@+id/TittleContactDetails"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
android:gravity="left"
android:text="ContactDetails" />
<View
android:layout_width="wrap_content"
android:layout_height="2dip"
android:layout_marginTop="2dp"
android:background="#FF909090" />
</LinearLayout>
<LinearLayout
android:id="@+id/mobileEmailDetails"
android:layout_below="@+id/ContactDetailsLayout"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:orientation="vertical">
<EditText
android:id="@+id/mobileNumber"
android:layout_width="290dp"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginTop="10dp"
android:maxLength="10"
android:maxLines="1"
android:inputType="number"
android:hint="Mobile No" />
<TextView
android:id="@+id/emailid"
android:layout_width="284dp"
android:layout_height="wrap_content"
android:layout_marginLeft="8dp"
android:layout_marginTop="10dp"
android:hint="Email ID" />
</LinearLayout>
<LinearLayout
android:id="@+id/continueBooking"
android:layout_below="@+id/mobileEmailDetails"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:orientation="vertical">
<ImageView
android:id="@+id/continuebooking"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="20dp"
android:layout_marginTop="30dp"
android:src="@drawable/searchflight" />
</LinearLayout>
</LinearLayout>
</ScrollView>
</RelativeLayout>
当Listview将出现在布局ID: passengerDetails 中时,编辑文本和微调器将不会出现。请帮我解决问题。请告诉我我必须做什么
答案 0 :(得分:1)
http://developer.android.com/reference/android/widget/ScrollView.html
从文档引用
你永远不应该使用带有ListView的ScrollView,因为ListView负责自己的垂直滚动。最重要的是,这样做会使ListView中的所有重要优化都无法处理大型列表,因为它有效地强制ListView显示其整个项目列表以填充ScrollView提供的无限容器。
您可以将其他人的观点作为页眉和页脚添加到列表视图中。
添加页脚
public void addFooterView (View v)
Added in API level 1
Add a fixed view to appear at the bottom of the list. If addFooterView is called more than once, the views will appear in the order they were added. Views added using this call can take focus if they want.
NOTE: Call this before calling setAdapter. This is so ListView can wrap the supplied cursor with one that will also account for header and footer views.
Parameters
v The view to add.
添加标题
public void addHeaderView (View v)
Added in API level 1
Add a fixed view to appear at the top of the list. If addHeaderView is called more than once, the views will appear in the order they were added. Views added using this call can take focus if they want.
NOTE: Call this before calling setAdapter. This is so ListView can wrap the supplied cursor with one that will also account for header and footer views.
Parameters
v The view to add.
答案 1 :(得分:0)
将一个可滚动条放在另一个滚动条中并不是一个好主意。您需要避免这种类型的布局构造。您可能想重新考虑您的布局。
答案 2 :(得分:0)
使用以下内容简单地替换上面的ScrollView:
<ScrollView
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/headerLayout"
android:layout_gravity="center"
android:fillViewport="true" >