ImageButton из дочернего макета метод onClick не работает - PullRequest
2 голосов
/ 10 июня 2011

У меня в окне просмотра ImageButton, который не работает (метод не вызывается), когда я пытаюсь щелкнуть по нему, но он работает, если я щелкаю по клавиатуре эмулятора.adb shell logcat ничего не печатает.

мой макет main.xml:

<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android">  
    <LinearLayout   
        android:id="@+id/btn"   
        android:orientation="vertical"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        >
        <ImageButton            
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:layout_gravity="center_horizontal"  
            android:src="@drawable/ic_btn"
            android:clickable="true"
            android:onClick="click"         
         />
         <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:text="Text" />
    </LinearLayout>                   
</merge>

метод щелчка в действии:

public void click(View view) {
    tv.setText("clicked");
}

И если я поставлюImageButton как прямой дочерний элемент <merge>, метод click работает.Моя цель сборки - Android 2.2.Итак, что здесь не так?


ОБНОВЛЕНИЕ Я просто знаю, что это потому, что у меня есть анимация на кнопке, а расположение кнопки не обновляется после завершения анимации.Я не включил это ранее, потому что я не знал, связано ли это.

...