ich exakt das gleiche Problem hatte, versuchen Sie dies heraus, dass es perfekt für mich gearbeitet. Sie überschreiben die Methode notifyDataSetChanged(). Sie tun dies in Ihrer Adapterklasse. Kopieren Sie einfach den Code, den ich gepostet habe, und ersetzen Sie die Zeile, in der ich setSelection() mit was immer Sie getan haben.
@Override
public void notifyDataSetChanged()
{
super.notifyDataSetChanged();
parentGlobal.setSelection(this.getCount() - 1); //This is how we start Activity fully scrolled to bottom
}
das gesagt ist, falls Sie sich fragen, „parentGlobal“ ist das Listview, dass ich den Adapter auf meiner Tätigkeit. Im Konstruktor des Adapters habe ich die ListView übergeben und dann "global" gemacht. Ich entschuldige mich, wenn "global" kein Java-Begriff ist, ich komme aus einer C++ - Welt.
// Geht in Aktivität:
lv_main = (ListView) findViewById(R.id.listView_conversation);
adapter_main = new Adapter_Conversation(ConversationActivity.this, R.layout.layout_list_conversation,
list_main_UI, lv_main, main_list_item_margin_px);
lv_main.setAdapter(adapter_main);
// Geht in Adapter
public Adapter_Conversation(AppCompatActivity activity, @LayoutRes int resource,
ArrayList<Adapter_GetSet_Conversation> list_conversation, ListView lv_main,
int item_margin_px)
jemand mir helfen :( – hiepnh
watch [diese] (http://stackoverflow.com/questions/6942582/smoothscrolltoposition-nach-notifydatasetchanged-not-working-in-android) Frage: möglich duplicate – grine4ka
kann https://StackOverflow.com/a/20997828/5255006 wird Ihnen helfen –