2012-04-25 25 views
0

我想創建一個ListView和幾個其他文本框來過濾列表。 有沒有一種方法可以使用一個活動(即在同一頁面)來實現它?Android - 有沒有一種方法可以將ListView與其他控件一起放入同一個活動中?

一個問題: 我可以直接修改的ListView,而無需創建ListActivity?以及如何使我的ListActivity中的ListView可見? (我如何將它與xml鏈接?)。

+1

不要擴展listactivity。只需擴展活動並使用listview和其他一些佈局。 – kosa 2012-04-25 19:20:20

回答

1

你當然可以創建一個包含ListView和其他控件的佈局!讓你的Activity有一個佈局,其中包含你的ListView和你的其他控件。

<RelativeLayout> 
    <ListView android:id="@+id/listy"/> 

    <Button android:id="@+id/buttony" 
      android:layout_below="@id/listy"/> 

</RelativeLayout> 

在你Activity,你仍然需要你的數據適配器掛接到ListView等等。

2

是的。 ListActivity似乎給人們造成了很多困惑,當它是一個以ListView爲內容的常規活動時,還有一些輔助方法,就是這樣。

要添加你自己的,創建一個新的佈局文件,並添加你需要的所有小部件,就像其他任何佈局文件一樣。例如:

<LinearLayout xmlns:android="http://schemas.android.com/res/apk/android" 
    android:weightSum="1.0" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
    <TextView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="@string/whatever" 
     android:layout_weight="0" /> 
    <ListView 
     android:layout_width="fill_parent" 
     android:layout_height="0dip" 
     android:layout_weight="1" /> 
</LinearLayout> 
1

是的,您可以在同一個Activity中將ListView與其他一些必需的視圖一起使用。我會這樣做的方式是定義一個Activity並添加ListView(寬度和高度設置爲fill_parent)並添加一個SlidingDrawer,其中包含更改ListView所需的所有選項。採用這種方法,您的ListView將佔用屏幕上的所有空間並提供用戶自由交互。但是,另一方面,SlidingDrawer會爲所有列表更改視圖/選項提供額外的空間。

相關問題