In einer Leinwand der Benutzer ist in der Lage, Ansichten wie EditText, ImageViews zu erstellen und es ist möglich, ziehen Sie sie in der Ansicht. All diese Ansichten werden zu einem Arraylist auf einen Klick mit folgendem Code:Save and Retrieve Array von Ansichten in Android
for(int index=0; index<((ViewGroup)mDragLayer).getChildCount(); ++index) {
View nextChild = ((ViewGroup)mDragLayer).getChildAt(index);
elementList.add(nextChild);
}
Während der Benutzer auf dem gleichen Bildschirm ist, ist es möglich, die gleiche Ansicht mit Hilfe von elementList
mit folgendem Code zu füllen:
for(int i = 0; i < elementList.size(); i++){
mDragLayer.addView(elementList.get(i));
}
die Frage ist, wie kann elementList
zu einem späteren Zeitpunkt verwendet werden (Neubelebung nach der App zu töten), um die Ansicht zu füllen. Ich habe versucht, gemeinsame Einstellungen zu verwenden, ist jedoch fehlgeschlagen.
Jeder Vorschlag wird sehr geschätzt.
was meinst du, ist es nicht möglich, textview Informationen direkt in gemeinsamen Einstellungen zu speichern? – TharakaNirmana
Sie können Textansichtsinformationen speichern, wenn Sie in String oder String [], aber kein TextView-Objekt konvertieren. – Adley
Alle Ansichtsobjekte haben den gleichen Lebenszyklus wie umschließende Aktivität oder Fragment hat. Sobald die Aktivität beendet ist, wird die gesamte Ansichtshierarchie gelöscht. Sie können Daten beibehalten, die zum Erstellen der Ansicht erforderlich sind. Dies kann Text, Position, Farbe usw. sein. Sie können die Ansicht jedoch nicht persistieren. Sie müssen sie erneut erstellen. –