Ich muss in der ListView vorhandenen mehr Daten, die ich von einer Datenbank, jedoch mit einem "mehr" -Knopf ohne Start oder Aktualisierungsaktivität erhalten.Aktualisieren oder Zusammenführen ArrayAdapter mit neuen Daten - Taste mehr
Ich schlug diesen Weg, adapter.AddAll (NewAdapter), aber es zeigt nur die Adresse an (ich denke, das ist es) Linie in der Liste, wie Sie in dem Bild in der Zeile nach dem Klicken mehr als ob sehen können Er hatte das XML-Feld nicht identifiziert. Aber der Adapter ist der selbe, um eine neue Listview nur mit dem neuen Adpter korrekt zu erstellen.
Jeder Vorschlag?
@Override
protected void onPostExecute(List<RssItem> result) {
progressBar.dismiss();
// Get a ListView from main view
ListView itcItems = (ListView) findViewById(R.id.listMainView);
if (Integer.parseInt(limit) < 1) {
adapter = new ArrayAdapter<RssItem>(local, android.R.layout.simple_list_item_1, result);
itcItems.setAdapter(adapter);
itcItems.setOnItemClickListener(new ListListener(result, local));
} else {
Nadapter = new ArrayAdapter<RssItem>(local, android.R.layout.simple_list_item_1, result);
if (Nadapter.getCount() == 0){
final Button btMais = (Button) findViewById(R.id.btMais);
btMais.setVisibility(View.GONE);
Toast.makeText(getBaseContext(), "Don't more data.", Toast.LENGTH_SHORT).show();
} else {
adapter.addAll(Nadapter);
itcItems.setAdapter(adapter);
itcItems.setOnItemClickListener(new ListListener(result, local));
}
}
}
Endcode und läuft mit Hilfe Shadab:
@Override
protected void onPostExecute(List<RssItem> result) {
progressBar.dismiss();
// Get a ListView from main view
ListView itcItems = (ListView) findViewById(R.id.listMainView);
if (Integer.parseInt(limit) < 1) {
adapter = new ArrayAdapter<RssItem>(local, android.R.layout.simple_list_item_1, result);
itcItems.setAdapter(adapter);
itcItems.setOnItemClickListener(new ListListener(result, local));
} else {
Nadapter = new ArrayAdapter<RssItem>(local, android.R.layout.simple_list_item_1, result);
if (Nadapter.getCount() == 0){
final Button btMais = (Button) findViewById(R.id.btMais);
btMais.setVisibility(View.GONE);
Toast.makeText(getBaseContext(), "Don't more data.", Toast.LENGTH_SHORT).show();
} else {
adapter.addAll(result);
adapter.notifyDataSetChanged();
}
}
}
Wenn Sie einige neue Daten zu Ihrem Adapter hinzuzufügen, haben Sie unter Verwendung ** notifyDataSetChanged zu „es mitteilen“() ** (es neue Daten hinzufügt und aktualisieren Listenansicht) hoffe, es hilft! –