Domanda

Nel mio app Android, ho due classi di visualizzazione personalizzato - PortraitClass e LandscapeClass. Entrambi fanno la stessa cosa. Sul esecuzione l'applicazione, la classe di visualizzazione recupera alcune immagini provenienti da uno SDCard e maniputlates poi (skew, ecc) e li visualizza. L'unica differenza tra le due classi è che il layout di immagini è leggermente diversa sullo schermo.

Ho due file display.xml (una sotto cartella di layout e l'altro sotto il layout-terra). Quello sotto la cartella di layout aggiunge ritratto e l'altro aggiunge la classe Paesaggio.

Il cambiamento di orientamento, vorrei inviare informazioni (numeri di immagine e pochi bitmap) da una classe all'altra in modo da non dover prendere tutte le bitmap di nuovo e anche in modo che io espongo quelli che venivano visualizzati.

Trovo la cosa tipo Parcelable di confondere. Ho provato seguente this_example , ma notato che in onRestoreInstance, il Parcelable ha nullo per il "mSuperState" e ottengo un ClassCastException @ " ss savedState = (savedState) stato". Il numero intero (Numero d'immagine) che sto cercando di pass è lì. Non sono sicuro di quello che sto facendo male.

È stato utile?

Soluzione

È possibile utilizzare un Singleton mondiale nella classe Application. Ad esempio, un "AssetManager" è disponibile qui:

public class YourApplication extends Application {

    public AssetManager assetManager = new AssetManager();

    @Override
    public void onCreate() 
    {
        super.onCreate();
    }
}

È quindi possibile chiamare da un'altra attività:

 YourApplication application = ((YourApplication ) this.getApplication());
 application.assetManager.someFunction();

Altri suggerimenti

Non sono sicuro se questo è quello che stai cercando, ma la mia roba funziona sempre nel cambiamento dell'orientamento con onCreate (Bundle savedInstanceState). Il mio è tutto il testo in caselle di modifica di testo anche se così non sono sicuro di come sarebbe lavorare per voi.

Controlla anche questo fuori circa a metà strada verso il basso in "Persistente Stato Informazioni Durante Configuration Change" http://www.devx.com/wireless/Article/40792/1954

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top