Scrollview问题

时间:2011-09-24 10:07:20

标签: android scrollview

在一项活动中,我有按钮列表和列表视图。对于每个类别,我都有一个按钮,单击它会显示相应的数据。这是我的xml代码。

  <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android" 
 android:orientation="vertical"
 android:layout_width="fill_parent"
  android:layout_height="fill_parent"
 >
<Button  android:layout_width="fill_parent"
  android:layout_height="60dp"
android:id="@+id/button_1"
 android:text="first"
/> 
 <Button  android:layout_width="fill_parent"
  android:layout_height="60dp"
android:id="@+id/button_2"
 android:text="second"
/> 
     <Button  android:layout_width="fill_parent"
  android:layout_height="60dp"
android:id="@+id/button_3"
 android:text="three"
/> 
<Button  android:layout_width="fill_parent"
  android:layout_height="60dp"
android:id="@+id/button_4"
 android:text="four"
/> 
  <Button  android:layout_width="fill_parent"
  android:layout_height="60dp"
android:id="@+id/button_5"
 android:text="five"
/> 
  <Button  android:layout_width="fill_parent"
  android:layout_height="60dp"
android:id="@+id/button_6"
 android:text="six"
/> 
 <Button  android:layout_width="fill_parent"
  android:layout_height="60dp"
android:id="@+id/button_7"
 android:text="seven"
/> 
 <Button  android:layout_width="fill_parent"
  android:layout_height="60dp"
android:id="@+id/button_8"
 android:text="eight"
/> 
 <ListView android:id="@+id/list" android:visibility="gone"
      android:layout_width="wrap_content"
        android:layout_height="fill_parent"/>

 </LinearLayout>

在此活动中,第一个按钮可见。然后单击按钮,所有按钮都将不可见,只有列表视图。问题是如果我使用滚动视图,我可以滚动按钮,但只能看到列表视图的一半意味着我无法滚动它。如果我没有使用滚动视图,我可以滚动列表视图但不滚动按钮。任何人都可以帮助我,我错了吗? 谢谢..

2 个答案:

答案 0 :(得分:1)

我的建议是将按钮设为 listview标题。这样您就可以滚动所有内容而无需ScrollView。

请参阅ListView.addHeaderView

答案 1 :(得分:1)

Do NOT put a ListView inside a ScrollView. ListView already handles 
scrolling, you're only going to run into trouble. 

在您的情况下,您可以将所有Button保留在seperate xml layout中,并使用滚动条和ListView进行单独布局,并使用addHeaderView ListView属性并添加按钮的布局。

Example of addHeaderView in ListView