2013-03-06 10 views
5

Bir simge ve metin gruplamak için bunları bir linelayout olarak gruplandırdım ve doğrusal düzen için bir dinleyici uyguladı.onclicklistener ile LinearLayout için sorun

<LinearLayout 
     android:id="@+id/ll0" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="fill_horizontal" 
     android:orientation="vertical" > 
     <ImageButton 
      android:id="@+id/imageButton0" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:background="@null" 
      android:src="@drawable/start" /> 
     <TextView 
      android:id="@+id/textView0" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Start" 
      android:textAppearance="?android:attr/textAppearanceMedium" /> 
    </LinearLayout> 

Ben dinleyici izlenecek yolu uygulamış: - karşılaştığım

l0 = (LinearLayout)findViewById(R.id.ll0); 
l0.setOnClickListener(new View.OnClickListener() 
    { 
     public void onClick(View v) 
     { 
      //Some Code 
     } 
    }); 

Sorunum simgesine tıklayın olanı, dinleyici cevap görünmüyor olduğunu. Dinleyici, metin görünümü ve simge arasındaki boşluğa tıkladığımda çalıştı. Bütün parçanın belirli bir noktada tıklanabilir olmasını istiyorum.

cevap

6

Sanırım ImageButton tıklanabilir bir görünümdür ve tıklamayı yakalayarak LinearLayout'un tıklama olayını almasını engeller. ImageButton'u tanımlayan XML'e android:clickable="false" eklemeye çalışın. Bununla birlikte, daha iyi bir cevap çekilebilir bir bileşik kullanmaktır. Bakınız How do I use a compound drawable instead of a LinearLayout that contains an ImageView and a TextView. Temel olarak TextView'u tanımlayan XML'e android:drawableTop="@drawable/start" ekleyebilir ve LinearLayout ve ImageButton ile birlikte tamamen ortadan kaldırabilirsiniz. Sonra sadece TextView üzerindeki tıklamayı halledin.

+1

android: clickable yardım ediyor gibi görünmüyor, ancak bileşik çekilebilir iyi çalışıyor. – daemon54