16
Veritabanından kayıtlarla doldurulmuş bir liste görünümü var. Şimdi bazı kayıtların görünür olmasına karşın seçim için kullanılamam gerekiyor, bunu nasıl başarabilirim?Liste Görünümü'nde öğeler nasıl devre dışı bırakılır?
burada şöyle
public class SomeClass extends ListActivity {
private static List<String> products;
private DataHelper dh;
public void onCreate(Bundle savedInstanceState) {
dh = new DataHelper(this);
products = dh.GetMyProducts(); /* Returns a List<String>*/
super.onCreate(savedInstanceState);
setListAdapter(new ArrayAdapter<String>(this, R.layout.myproducts, products));
ListView lv = getListView();
lv.setTextFilterEnabled(true);
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), ((TextView) arg1).getText(), Toast.LENGTH_SHORT).show();
}
});
}
}
düzen dosya myproducts.xml benim kod:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="10dp"
android:textSize="16sp">
</TextView>
Bu çözüme dikkat edin. BaseAdapter belgelerine, "Belirtilen konumdaki öğe ayırıcı değilse true döndürür." Bu, false değerini döndürdüğünüzde öğenin bir ayırıcı öğe olduğu anlamına gelir. Bazı telefonlar android: normal öğe ve ayırıcı bir öğe arasındaki bölücü çizmeyebilir. – Janusz
Bu kesinlikle doğru ve daha önce bu konuya girdim; Satır düzeninin kendisinde bir ayırıcı ekledim veya getView() 'da gösterdim/gizledim veya öğeleri etkin bıraktı, ancak üzerlerinde tıklamaları yok saydı ve görünmeyen bir arka plan oluşturdu. tıklanabilir. –
Listenizde bölümlerin olması için "Başlık" bölücülerinin yerleştirilmesi harika! – htafoya