2012-12-31 171 views
2

我有一個自定義列表視圖,這是可重新排列(拖動&下拉),顯然可以滾動。我需要添加一個自定義標題,該列表視圖應該與列表一起滾動。Android ListView自定義標題

我嘗試過使用自定義頁眉佈局的「listView.addHeaderView(header)」。但在列表重新排列期間,標題變得混亂。所以我不想使用addHeaderView(...)。

我也試圖把我的活動佈局,這是一個LinearLayout,在一個滾動視圖內,並按照這裏建議的展開列表 - How can I put a ListView into a ScrollView without it collapsing?。但是,滾動似乎很慢,ScrollView正在創建列表項重新排列的問題。

那麼是否有其他方法可以實現這種效果?我更喜歡佈局中的一些解決方案。

我在Android UI上相當缺乏經驗。提前致謝。

+0

我還應該提到我的應用程序需要支持Android 2.3+。 – mpb

回答

0

您可以在佈局中添加靜態頭我的意思是,你有上面滾動型佈局添加一個線性佈局靜態頭經過this question 它會幫助你

+0

感謝您的回覆。但我的要求是,頭應該可以滾動列表。 – mpb

+0

然後它的簡單修復列表的第一項顯示您的標題 –

0

如果你不希望具有列表做一個水平滾動視圖,所以你可以創建一個水平線性佈局(與你的列表佈局相同)的Xml佈局,然後將其包含在你的列表視圖佈局的頂部,但如果你想水平srcollable,所以你有兩個選擇:一個是你提到的addheader視圖和第二個是自定義ScrollView,你可以找到一個很好的解決方案here

9

你可以廣告DA頭查看到您的列表,使用下面的代碼,

View header = getLayoutInflater().inflate(R.layout.header, null); 
ListView listView = getListView(); 
listView.addHeaderView(header); 
setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_single_choice,android.R.id.text1, names)); 

但對於這一點,你需要定義layour的頭查看,檢查此Link Android ListActivity with a header or footer

編輯 -按評論,我會要提及的是,在ScrollView內部使用ListView並不是一個好習慣。目前發現的最佳解決方案是將HeaderView添加到您的ListView。如果OP可以提到,他會遇到什麼問題,HeaderView

如果你想要一個可滾動的頭文件,你應該使用HeaderView。但是如果你想在ListView上面有一個靜態頭部,你可以使用TextView作爲ListView的標題。

+0

他提到,他不想addHeaderView –

+0

@Arash:我有我自己的工作列表與標題視圖,我還沒有發現任何問題。但我很想聽聽OP在其中發現了什麼問題。 –

+0

我也是!:)我也添加了工作headerview到listview,我唯一的問題是headerview是它滾動列表內容,它不像我們期望的靜態標題那樣凍結。 –