2013-08-21 33 views
9

List'un üzerinde bir View numaralı telefona ListView numaralı telefondan başka bir ekleme yolu var mı? Örneğin, List'un üstünde yer alan bir Başlık Çubuğu (TextView) istiyorum ve liste kaydırmaları olarak görünümde kayar. Bunu yapmak için şu ana kadar iki yol düşünebilirim, ama her ikisi de korsan.Başlıksız Liste Görünümü


Fikir # 1 - ListView gibi davranan bir LinearLayout kullanın. Ancak sorun, bir adaptörün sağladığı "akıllı" yükleme/boşaltma işlemlerinden yararlanamamanızdır.

<ScrollView> 
    <LinearLayout> 

     <TextView/> 
     <LinearLayout 
      android:orientation="vertical" /> # add ListItems here 

    </LinearLayout> 
</ScrollView> 


2. Fikir - buna benzer bir getView yöntemle, bir hacky ArrayAdapter kullanın:

@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; 
} 

cevap

33

basit. başlığını ayarlamadan önce `; Sadece setAdapter (null)` aramak emin olun ListView

TextView textView = new TextView(context); 
textView.setText("Hello. I'm a header view"); 

listView.addHeaderView(textView); 
+5

için bir başlık görünümünü ekleyin. Veya adaptörü sadece başlığı ayarladıktan sonra ekleyin. – sriramramani

+0

Vay, var olan bir fikrim yoktu! – Matt