Dies ist meine allererste Frage also gehen Sie einfach auf mich :) Ich bin neu bei Android, und ich versuche, eine einfache Liste zu machen. In der ersten Aktivität kann der Benutzer Daten eingeben, die als Liste auf der zweiten Aktivität angezeigt werden sollen.Eine ArrayList an eine andere Aktivität übergeben, aber das Ergebnis nicht anzeigen?
Ich verwende Intents, um die Daten von einer Aktivität an eine andere zu übergeben, aber ich weiß, dass mir etwas Entscheidendes in meiner ClassB-Aktivität fehlt, da nichts angezeigt wird.
Hier ist mein Haupt-Code:
public class ClassA extends AppCompatActivity {
EditText note;
Button saveNoteB, goToNotesB;
public final static String EXTRA_NOTE = "com.lisa.currys.userlistarray.note";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
saveNoteB = (Button) findViewById(R.id.saveNote);
saveNoteB.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(ClassA.this, ClassB.class);
note = (EditText) findViewById(R.id.note);
String userInput = note.getText().toString();
ArrayList<String> arr = new ArrayList<String>();
arr.add(userInput);
i.putStringArrayListExtra("note", arr);
startActivity(i);
}
});
und für meine zweite Aktivität:
public class ClassB extends AppCompatActivity {
public static android.widget.ListView displayNotes;
ArrayList<String> arr = new ArrayList<String>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
arr = getIntent().getExtras().getStringArrayList(ClassA.EXTRA_NOTE);
displayNotes = (ListView)findViewById(R.id.listView);
Intent i = getIntent();
arr = i.getStringArrayListExtra("note");
ArrayAdapter<String> adapter = new ArrayAdapter<String>(ClassB.this, android.R.layout.simple_list_item_1);
displayNotes.setAdapter(adapter);
}
}
Alle Hinweise oder Ratschläge wäre sehr zu begrüßen.
Vielen Dank.
Ja, das funktioniert perfekt. Ich habe nicht gemerkt, dass ich die Verabredung verpasst hatte. Wahrscheinlich starrte ich es zu lange an. Vielen Dank George Mulligan :) – Woowoo