Veritabanımdaki değerlerle doldurduğum bir ListView var. Veritabanı boşsa, ListView'in ilk öğesini "Veri yok" olarak ayarlıyorum. Bu öğeye tıklayarak devre dışı bırakmak istiyorum. ArrayAdapter kullandım. Yapmaya çalıştım, hepsi yanlış, ama yanlış bir şeydi. ListView'un isClickable'ı ve setEnabled'ı false olarak ayarlansa bile, kullanışsızdır. Ve OnItemClickListener için kodu diğer koşulda koydum, bu da liste öğesinin tıklanabilir olmasını engellemiyor. Birisi alternatif bir çözüm var mı? Teşekkürler!Android'de ListView'i tıklayarak nasıl devre dışı bırakılır?
cevap
yapın hiçbir şey yapmak:
@Override
public boolean isEnabled(int position) {
return false;
}
hep benim için çalışıyor.
gösterdi gibi boş Görünüm ayarlayabilir ve otomatik ele alınacaktır: deyim OnClick içinde listview girdisinin içeriğini kontrol etmek eğer Hayır' içeriyorsa
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="8dp"
android:paddingRight="8dp">
<ListView android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#00FF00"
android:layout_weight="1"
android:drawSelectorOnTop="false"/>
<TextView android:id="@android:id/empty"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FF0000"
android:text="No data"/>
</LinearLayout>
yardım eder! Bu sadece soruya cevap vermekle kalmıyor, aynı zamanda boş bir listeyi işlemenin daha iyi bir yolunu da sunuyor! – chuky
Belki bir kullanabiliriz veri' başka return false için isEnabled işlevini kullanmak ArrayAdapter aramaları özel olarak olağan
sayede tıklama
tüm kolay devre dışı bırakmak istediğiniz zaman sonra false
dönmek o liste için Adaptör oluşturmak ve orada bu yöntemi
public boolean isEnabled(int position);
geçersiz! Benim ihtiyacına göre böyle yaptılar
Çok teşekkürler! Benim için çalıştı, tüm yukarıda benim için çalışmadı .. –
Kötü! Bu, kaydırmayı önler. –
list.setEnabled (yanlış) Bu kabul cevap olmalıdır size bazı nasıl
@Override
public boolean isEnabled(int position) {
if(data.get(position).isClickable==false)
{
return false;
}
return super.isEnabled(position);
}
- 1. Bazı koşullarda ActionBar.TabListener nasıl devre dışı bırakılır/devre dışı bırakılır
- 2. QPushButton nasıl devre dışı bırakılır
- 3. NSTableVIew'da sıralama nasıl devre dışı bırakılır?
- 4. .NET: System.Transactions'da promosyonu nasıl devre dışı bırakılır?
- 5. DrawerLayout Gölge nasıl devre dışı bırakılır
- 6. Emacs'ta x yapıştırma nasıl devre dışı bırakılır
- 7. JQuery Mousewheel: Nasıl devre dışı bırakılır?
- 8. hız günlükleri nasıl devre dışı bırakılır
- 9. active_admin'in toplu eylemi nasıl devre dışı bırakılır?
- 10. Apache2'de mod_deflate nasıl devre dışı bırakılır?
- 11. GitLab: Otomatik başlangıç nasıl devre dışı bırakılır?
- 12. AngularJS'deki girdilerin kırpılması nasıl devre dışı bırakılır?
- 13. Emacs'te saçak nasıl devre dışı bırakılır?
- 14. ScrollView kaydırması nasıl devre dışı bırakılır?
- 15. Bir kendogrid'de sayfalama nasıl devre dışı bırakılır
- 16. Django: modelinde sipariş nasıl devre dışı bırakılır
- 17. GWT ValueListBox nasıl devre dışı bırakılır?
- 18. Yammer sohbeti tamamen nasıl devre dışı bırakılır?
- 19. zaten ayırtılmış tarihler nasıl devre dışı bırakılır?
- 20. CakePHP Form Combo nasıl devre dışı bırakılır?
- 21. ContextMenuStrip'deki menü öğeleri nasıl devre dışı bırakılır?
- 22. Matris matrisi nasıl devre dışı bırakılır?
- 23. QTableView'de Düzenleme modu nasıl devre dışı bırakılır?
- 24. Geliştirme'de ActionMailer nasıl devre dışı bırakılır?
- 25. EGit geçici olarak nasıl devre dışı bırakılır?
- 26. İletişim kutuları nasıl devre dışı bırakılır - alert()?
- 27. Vue-cli'da ESLint nasıl devre dışı bırakılır?
- 28. Dokunma olayları SwipeRefreshLayout'ta nasıl devre dışı bırakılır?
- 29. Video çekimi nasıl devre dışı bırakılır UIImagePickerController
- 30. Tkinter'da bir Combobox nasıl devre dışı bırakılır?
benim için de çalıştı! –
Rocking ... bu iyi çalışıyor .. – vabhavsingh
Devre dışı bırakıldıktan sonra yeniden nasıl etkinleştirebilirim? –