Ho un pulsante "aggiungi" e un GridLayout con 6 slot al suo interno, quando faccio clic sul pulsante "aggiungi", viene aggiunta la vista1 nella griglia, faccio clic sull'aggiunta 'pulsante di nuovo view2 viene aggiunto, e così via.Aggiunta di viste in un ordine specifico e memorizzazione di tale ordine
if (!theLayout1.isShown()) {
Grid.addView(theLayout1);
} else if (!theLayout2.isShown()) {
Grid.addView(theLayout2);
} else if (!theLayout3.isShown()) {
Grid.addView(theLayout3);
} ..... // this goes on
dopo una vista viene aggiunto a verificare se il testo è stato già aggiunto in sharedPrefs modo che possano essere aggiunti automaticamente quando si ricrea l'attività
if (prefs.getString("text4", null) != null) {
Grid.addView(theLayout4);
}
if (prefs.getString("text5", null) != null) {
Grid.addView(theLayout5);
}
// each view has one EditText
il mio problema è, se tolgo view1 e quindi aggiungere di nuovo, verrà inserito nell'ultimo slot come voglio, ma quando ricrearò l'attività tornerà al primo posto, perché poiché il codice viene letto nel suo ordine, aggiungerà le visualizzazioni nel loro ordine iniziale.
Voglio aggiungere le visualizzazioni quando ricreare l'attività nell'ordine in cui erano prima di terminare l'attività, questo può avere una soluzione logica semplice o forse sto solo affrontando il problema molto in modo errato, in ogni caso, è necessario un aiuto !
Ok, non aggiungerà i layout nell'ordine (int) i? (layout1 poi layout2 poi layout 3 poi layout4 ...) –
Puoi aggiungere i layout nell'ordine che vuoi! La parte importante è solo recuperarli nell'ordine corretto. – GuillaumeAgis