9
List
の上に別のView
を挿入する方法はListView
にありますか?たとえば、タイトルバー(TextView)がList
の上にあり、リストがスクロールするときに表示範囲外にスクロールします。これまでのところ、2つの方法が考えられますが、どちらもハックです。タイトルリスト付きリストビュー
アイデア#1 - ListViewであると思われるLinearLayoutを使用します。しかし、問題は、アダプターが提供するビューの「スマートな」ロード/アンロードを利用できないことです。
<ScrollView>
<LinearLayout>
<TextView/>
<LinearLayout
android:orientation="vertical" /> # add ListItems here
</LinearLayout>
</ScrollView>
アイデア#2 - これに類似getView
の方法で、ハックArrayAdapter
を使用します。
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if(position == 0)
View view = inflater.inflate(R.layout.special_list_item, null);
else
View view = inflater.inflate(R.layout.regular_list_item, null);
...
return vi;
}
ヘッダーを設定する前に必ず 'setAdapter(null);'を呼び出すようにしてください。または、ヘッダーを設定した後にのみアダプターを追加してください。 – sriramramani
うわー、私は存在していたことを知らなかった! – Matt