Click is not working on the Listitem Listview android
Click не работает в Listitem Listview Android
Я реализовал Android listview с помощью ListActivity. Здесь у меня проблема в том, что когда я нажимаю на элемент списка, никаких действий не выполняется, когда цвет вспышки также не отображается, это оранжевый цвет. Итак, у вас есть какие-либо представления об этом, любезно ответьте на мой вопрос.
@Override protectedvoidonListItemClick(ListView l, View v, int position, long id) { super.onListItemClick(l, v, position, id); Toast.makeText(getApplicationContext(), "msg msg", Toast.LENGTH_SHORT) .show();
}
Я поместил этот код также в основной ListActivity.
Переведено автоматически
Ответ 1
Первое, на что вы должны обратить внимание здесь, это то, что всякий раз, когда в вашем ImageButtons элементе есть элементы, на которые можно нажимать, такие как кнопки или ListView присутствующие в вашем, они берут на себя управление событиями щелчка. И поэтому у вас ListView не будет возможности принять событие click.
Что вам просто нужно сделать, это установить для focusable атрибута значение false для Button или ImageButton, которое у вас есть в вашем ListView. Но все равно они будут работать без каких-либо проблем, а также ваш ListView onListItemClick также будет работать.
Попробуйте это,
<Button android:id="@+id/textsize_increaser" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@+id/back_button" android:focusable="false" android:text=" A + "/>
Здесь я добавил это android:focusable="false" и это работает нормально. попробуйте.
И если у вас есть какие-либо кликабельные imageview, textview или button в элементе списка, то сделайте их недоступными для фокусировки (в вашем классе адаптера):
Вы используете пользовательский адаптер? и раздуваете макет с помощью кнопки или любого другого представления, которое съедает фокус представления списка как дочернего, тогда это, очевидно, не сработает. убедитесь, что установлено
android:focusable="false"
для такого просмотра в XML-файле. надеюсь, у вас это сработает.