2011-06-08 15 views
10

Sorunum, ListView'den geliyor. Düğmeler olmadan, ListView'ün .setOnItemClickListener iyi çalışır. Ben ListView öğeleri içine Düğmeleri eklemek zamandaAndroid: Düğmelerle Liste Görünümü -> OnItemBu işlemi yapın

, Düğmeler tıklanabilir ancak öğeler daha tıklanabilir değildir ... (Bir Aktivite başlangıç)

Ben myListView.setItemCanFocus(true); kullanmaya çalışıyorum ama işe yaramaz ...

+0

Soru alamıyorum. SetOnItemClickListener öğesinde onCLickListener ve öğeleri eklediğinizde düğmeler tıklanabilir. Eklediklerinizi ve neyi daha kesin olarak açıklayabilir misiniz? – Stuti

+0

Liste görünümünde düğmelere sahip olmak tuhaf geliyor. Bunun yerine bir içerik menüsü kullanmayı düşündünüz mü? –

+0

@Stuti: Ve yazınızı alamıyorum. "U" yerine "sen" yazabilir misin? Dili burada temiz tutmalıyız. Teşekkürler – WarrenFaith

cevap

0

Sen O liste görünümü içinde tıklanabilir düğme için bir onTouch() geri arama kullanmak daha iyi olabilir ListView'in .setOnItemClickListener içinde

view.findViewById(R.id.btn_id).setOnClickListener(new View.OnClickListener(){//your method}) 
2

bunu kullanabilir. Daha sonra hem liste öğesinde hem de düğmesinde tıklayabilirsiniz. Bazı kodlar için (bkz. TouchDelegate) this question.

2

Liste görünümünüzdeki düğme, onItemClickEvent öğesini emer.

İyi

öğretici bu sorunu çözecek Button odaklanabilir niteliğini çıkarın here

34

olduğunu açıkladı. Bunu bir düzen xml dosyasında veya java kaynak kodunda yapabilirsiniz.

Ve bir başka ipucu, Button yerine ImageButton kullanıyorsanız, bu işi yapmak için java kodunuzda setFocusable'a ihtiyacınız vardır, bu sebeple ImageButton kurucusu, xml dosyasından şişirildikten sonra bu özniteliğe neden olur.

+2

kabul ettiğin her cevap için 5 puan daha al. Çok teşekkürler!!! –

+0

Bu harika. Diğer çalışma alanlarından daha hızlı yol. Teşekkürler! Bunu nasıl yapacağını bilmeyen herkes için, XML dosyanıza butonunuza sadece android: focusable = "false" ekleyin. –

+0

Çok teşekkür ederim! Okuyucular için: Düğme için bu doğru bir çözümdür, kontrol ediyorum. – DenisMath

İlgili konular