Android - трекбол, ошибка видимости ListView исчезла - PullRequest
0 голосов
/ 01 февраля 2012

У меня есть просмотр списка, который отображает список профилей, добавленных пользователем.Если профилей не существует, я устанавливаю видимость списка в «ушел».

У меня есть контекстное меню в виде списка, которое позволяет пользователю удалить профиль.При этом я отображаю диалоговое окно, чтобы подтвердить, что они хотят удалить профиль.

Если пользователь выбирает «Да» в диалоговом окне, касаясь кнопки, все работает нормально.

Еслипользователь выбирает «Да» с помощью трекбола, затем касается экрана, приложение вылетает.

Я могу предотвратить сбой, закомментировав строку кода, которая устанавливает видимость списка в «ушел».Мне любопытно, что вызывает сбой (хочу понять).

Мне кажется, что ошибка вводит в заблуждение, а именно: java.lang.IllegalStateException: содержимое адаптера изменилось, но ListView не получил уведомление,Убедитесь, что содержимое вашего адаптера не изменено из фонового потока, а только из потока пользовательского интерфейса

1 Ответ

0 голосов
/ 23 февраля 2012

Адаптер, который использовал ListView, просто нужно было уведомить об изменении данных (notifyDataSetChanged ()). До сих пор не уверен, почему поведение между трекболом и сенсорным отличается, но я лучше понимаю, как работает адаптер.

...