Android ListView未按预期扩展

时间:2010-09-09 12:26:42

标签: android listview adapter

我的情况是这样的:

<ScrollView     
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"      
   android:scrollbars="vertical"        
   android:background="#ffffeb">

   <LinearLayout 
      android:orientation="vertical"
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent"
      android:padding="10dp">

      // Other stuff in between here..

      <LinearLayout
         android:orientation="vertical"   
         android:layout_width="fill_parent"   
         android:layout_height="fill_parent"   
         android:paddingLeft="12dp"   
         android:paddingRight="12dp">

         <Button 
            android:id="@+id/insert_ad_ad_information_category_and_type_button"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="6dp"
            android:text="@string/insert_ad_ad_information_category_and_type_button"/>

         <ListView
            android:id="@+id/insert_ad_ad_information_parameters_frame"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:background="#ffffeb"
            android:cacheColorHint="#00000000"
            android:divider="#00000000"
            android:dividerHeight="0dp"
            android:scrollbars="none"
            android:listSelector="@android:color/transparent"/>

我遇到的问题是我无法让ListView达到我想要的正确高度 我将使用我的自定义BaseAdapter课程添加一些组件,并且其中的所有内容都按预期工作 但是,当我调试我的应用程序时,我只能看到列表中的3个组件中的1.5个,其余组件在ListView中进一步隐藏。
但是,如何让ListView计算我拥有的组件数量并让它直接显示我的所有组件而不会向下滚动?

另一个想法是,如果我可以使用BaseAdapter填充任何其他类型的视图?因为我使用ListView的唯一原因是因为setAdapter()方法。

欣赏所有想法和评论:)

2 个答案:

答案 0 :(得分:1)

您不能在ScrollView中拥有ListView。那就是问题所在。

答案 1 :(得分:0)

如前所述,您无法在ScrollView中使用ListView。 如果您希望列表视图具有不同类型的项目,请使用“普通”项目滚动它们 你确实需要自定义适配器。如果您愿意,可以将其基于BaseAdapter 适配器必须支持您的项目类型,并使适当的布局膨胀,