В следующем проекте here is exampleБруса прокрутки во время .notifyDataSetChanged()
Я использую с .notifyDataSetChanged();
этим методом .post(new Runnable(){
для прокрутки вниз после добавления нового элемента
private void addItemsToList() {
int randomVal = MIN + (int) (Math.random() * ((MAX - MIN) + 1));
mItems.add(String.valueOf(randomVal));
mListAdapter.notifyDataSetChanged();
mCompleteListView.post(new Runnable(){
public void run() {
mCompleteListView.setSelection(mCompleteListView.getCount() - 1);
}});
}
public class ReceiverThread extends Thread {
String line;
String name;
ReceiverThread(String name, String line){
this.line=line;
this.name=name;
}
public void run() {
OpenStream.this.runOnUiThread(new Runnable() {
public void run() {
addItemsToList();}}}}
НО когда я хочу прокрутки вверх используя палец, новый программно добавленный элемент прокручивает listview вниз.
Как я могу установить .post(new Runnable()
когда я касаюсь экрана и используя палец для прокрутки? или что я могу сделать, чтобы не пропустить прокрутку списка, когда я касаюсь экрана?