Я знаю, что это старая запись, но недавно у меня возникла эта проблема на планшете, у которой нет физической кнопки прокрутки (как у моего телефона) для прокрутки элементов списка (без фактического выбора элемента путем нажатия на Это).
На моем телефоне, когда я прокручиваю элементы списка, «марка» всегда работала с первого дня.
Поэтому я поиграл в onListItemClick ...
Это результат:
@Override
protected void onListItemClick(ListView list, View v, int position, long id) {
final View t = v.findViewById(R.id.YOURTEXTVIEW_ID_HERE);
t.requestFocusFromTouch();
list.setSelectionFromTop(position, v.getTop());
super.onListItemClick(list, v, position, id);
}
Я пробовал все виды комбинаций requestFocus, requestFocusFromTouch и list.setSelectionFromTop, но вышеприведенная комбинация - это минимум методов, которые необходимы для того, чтобы он работал и элемент списка оставался в том положении, в котором он находится. работает с list.setSelection (position), но затем выбранный элемент будет перемещен в верхнюю часть списка, насколько это возможно, как и предназначен этот метод.
В XML я только получил:
android:ellipsize="marquee"
android:singleLine="true"