Sto utilizzando l'ultima versione (3.0) della libreria SlidingUpPanelLayout. Periodicamente il sistema operativo Android ucciderebbe la mia attività se è in esecuzione in background (esci premendo Home invece di Indietro). Se ciò accade, e il pannello è stato espanso quando l'utente ha utilizzato l'app per l'ultima volta, il pannello verrà comunque espanso quando verrà creato, ma tutto il contenuto al suo interno sarà eliminato. Fondamentalmente uno schermo vuoto.SlidingUpPanelLayout non collasserà per riprendere dopo che il sistema operativo ha terminato la mia attività
In questo scenario, in realtà desidero ripristinare l'attività allo stato iniziale (aperto dopo un'uscita completa), che viene compresso. Ma non riesco a farlo funzionare. Nel layout xml, sto impostando lo stato iniziale su collassato.
<com.sothree.slidinguppanel.SlidingUpPanelLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:sothree="http://schemas.android.com/apk/res-auto"
android:id="@+id/sliding_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="bottom"
sothree:umanoPanelHeight="48dp"
sothree:umanoShadowHeight="4dp"
sothree:umanoInitialState="collapsed" >
Ho anche collocato questa linea
slidingUpPanelLayout.setPanelState(PanelState.COLLAPSED);
in alcuni posti in onCreate(), ma panel non è al collasso. Ho stampato lo stato del pannello prima e dopo ogni tentativo di collasso e ho scoperto che lo stato del pannello è effettivamente impostato per essere compresso anche prima del primo tentativo di compressione, anche se chiaramente non è compresso.
Quindi questo è un errore nella libreria o sto facendo qualcosa di sbagliato.
Grazie per il vostro aiuto.