Autore Topic: Errore nella rotazione dispositivo  (Letto 255 volte)

Offline felasandroid

  • Utente normale
  • ***
  • Post: 345
  • Respect: +10
    • Github
    • balduzziantonio
    • balduzziantonio.unifi
    • Mostra profilo
  • Dispositivo Android:
    Huawei P8 Lite
  • Play Store ID:
    FelasTech
  • Sistema operativo:
    Windows 10
Errore nella rotazione dispositivo
« il: 04 Febbraio 2015, 14:28:47 CET »
0
Salve

stavo seguendo questo tutorial :http://shrikantsonarblogs.blogspot.it/2013/07/gridview-with-viewpager-like-android.html?showComment=1423044312201#c5238079468169010797

in pratica crea una ViewPager e all'interno una GridView. Solo che se ruoto il dispositivo in orizzontale va in crash..qualcuno potrebbe aiutarmi a capire?

Provando ad aggiungere:

Codice (Java): [Seleziona]
 // this method is only called once for this fragment
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // retain this fragment
        setRetainInstance(true);
    }

funziona..ma questo provoca memory leak? (http://developer.android.com/guide/topics/resources/runtime-changes.html)
« Ultima modifica: 04 Febbraio 2015, 15:08:48 CET da felasandroid »

Offline LonelyWolf

  • Utente junior
  • **
  • Post: 148
  • Respect: +12
    • Mostra profilo
    • Traversate dei laghi
  • Dispositivo Android:
    GT-I9505, ALE-L21
  • Sistema operativo:
    Windows 7 32/64
Re:Errore nella rotazione dispositivo
« Risposta #1 il: 10 Marzo 2015, 12:07:36 CET »
0
Prova così:
Codice: [Seleziona]
@Override
    protected void onSaveInstanceState(Bundle outState) {
        super.onSaveInstanceState(outState);
        outState.putSerializable("dati1", variabile1);
        outState.putSerializable("dati2", variabile2);
    }
    @Override
    protected void onRestoreInstanceState(Bundle savedState) {
        super.onRestoreInstanceState(savedState);
        variabile1= (classevariabile1) savedState.getSerializable("dati1");
        variabile2= (classevariabile2) savedState.getSerializable("dati2");
    }
Se la mia risposta ti è utile, per favore un thanks!