У меня есть ListView заселен с пользовательским XML ListItems, это XML:Android ListView не Highlight, когда OnClickListener установлен
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="6dip">
...
</RelativeLayout>
ListView правильно показывает на экране, и если я нажимаю или держать на элементе он становится синим (я использую Holo Light Theme)
проблема возникает, когда я пытаюсь присвоить OnClickListener к виду, внутри GetView в моей деятельности, которая простирается BaseAdapter:
@Override
public View getView(int position, @Nullable View convertView, ViewGroup parent) {
...
convertView = InflateUtils.inflate(mContext, R.layout.list_item);
...
convertView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(mContext, "Test", 2000).show();
}
});
...
}
после этого цвет выделения элемента списка больше не отображается, когда я нажимаю или удерживаю элемент списка, его фон остается белым, в любом случае onClickListener отлично работает.
Есть ли у вас предложение получить цвет подсветки при сохранении стилей по умолчанию для HoloLight?
Лицо, которое отказалось, не прокомментируйте, что случилось с моим ответом? Таким образом, мы приблизимся к истине. –
i did not, в любом случае мне было интересно узнать о OnItemClickListener, вы думаете, что это решит мою проблему? Есть ли проблемы с производительностью, отделяющие OnClickListener? - Я уже прочитал этот вопрос, но в решении не используется стиль HoloLight, который мне нужен. –
Ну, если ваши предметы одинаковы, вы можете использовать один прослушиватель и различать по id элемента - один объект, а не, возможно, сотни. Что касается голо - вы можете использовать голо с решением из этого ответа, использование фона подсветки называется R.drawable.list_selector_holo_dark –