1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

CHronometer null bei rotation

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von tanzverfuehrung, 02.11.2011.

  1. tanzverfuehrung, 02.11.2011 #1
    tanzverfuehrung

    tanzverfuehrung Threadstarter Neuer Benutzer

    Beiträge:
    8
    Erhaltene Danke:
    0
    Registriert seit:
    02.11.2011
    ist in JAVA!!!
    ja also wenn man ein android handy dreht...wird immer wieder die onCreat() methode aufgerufen!und alles wird auf null gesetzt.ich habe gelesen das ich das verhindern kann!
    verstehe iich aber nicht ganz...wie ich es speichern kannn
    ich habe einen chronometer der automatisch zählt....und immer wieder wenn ein neues GPS signal kommt, springt die uhr auf null zurück und fängt von neuem an zu zählen!(Das ist auch richtig so)
    nun aber wenn ich das handy drehe...geht die stopuhr auch immer wieder auf 00:00...(soll NICHT so sein)
    habe auch beide methoden (onSaveInstanceState und onRestoreInstanceState) benutzt....
    nun frage ich mich aber wieso das alles noch nicht so funktioniert?!
    wo genau muss ich die methoden benutzen???
    kann mir jemand weiter helfen?


    PHP:
        private long lasttimeSend;

    @
    Override
        
    protected void onSaveInstanceState(Bundle outState) {
            
    outState.putLong("chronometer"lasttimeSend);

            
    super.onSaveInstanceState(outState);
        }


    @
    Override
        
    protected void onRestoreInstanceState(Bundle savedInstanceState) {
           
            
    Chronometer chronometerView = (Chronometer)    findViewById(R.id.chronometer);
        
    chronometerView.setBase(savedInstanceState.getLong("chronometer"));

            
    super.onRestoreInstanceState(savedInstanceState);
        }

    ich habe auch gelesen das man es in der MAnifest amchen kann...
    <activity android:name=".MyActivity"
    android:label="My Activity"
    android:screenOrientation="portrait">

    ...doch dann dreht sich der bildschirm einfach nicht mehr mit wenn ich das handy drehe!aber es wird nichts gespeichert.....
    das heißt z.b. wenn ich die tastertur aufschiebe...ändert sich auch die bildschirmperspektive und somit ist alles wieder weg(auf null)


    EDIT:
    ich habe es jetzt noch anders ausprobiert mit zwei methoden

    PHP:
    @Override
        
    protected void onPause() {
            final 
    SharedPreferences.Editor editor getPreferences(MODE_PRIVATE)
                    .
    edit();
            
    editor.putLong("time"lasttimeSend);
            
    editor.commit();
            
    super.onPause();
        }

        @
    Override
        
    protected void onResume() {
            final 
    SharedPreferences prefs getPreferences(MODE_PRIVATE);
            
    Chronometer chronometerView = (ChronometerfindViewById(R.id.chronometer);
            
    chronometerView.setBase(prefs.getLong("chronometer"lasttimeSend));
        }
    doch dann funktioniert GARNCIHTS mehr!
    also meine app kann dann nach dem installieren garnicht geöffnet werden!WIESOOOOO???

    wenn ich die methode onResume() auskommentiere aber onPause nicht auskommentiere....funktioniert meine app wieder....
    aber mein problem ist immer noch nicht gelöst.
     
    Zuletzt bearbeitet: 02.11.2011
  2. Neeldarax, 02.11.2011 #2
    Neeldarax

    Neeldarax Erfahrener Benutzer

    Beiträge:
    170
    Erhaltene Danke:
    31
    Registriert seit:
    07.12.2010
    Hallo tanzverfuehrung,

    wenn du deine manifest anpasst:
    Code:
            <activity android:name="de.alexroid.MeinProjekt"
                android:label="@string/app_name_beta" [B]android:configChanges="orientation"[/B]>
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
    sollte dann beim drehen, nicht wieder alles neugestartet werden.
    So habe ich bei mir das Problem gelöst.

    regards
     
    tanzverfuehrung bedankt sich.
  3. tanzverfuehrung, 02.11.2011 #3
    tanzverfuehrung

    tanzverfuehrung Threadstarter Neuer Benutzer

    Beiträge:
    8
    Erhaltene Danke:
    0
    Registriert seit:
    02.11.2011

    ja das hatte ich auch schon...ABER damit kann man ja dann die applikation nicht mehr drehen.(das handy schon aber die applikation dreht sich nicht mehr mit)das soll noch funktionieren.aber die werte sollen nicht zurück gesetzt werden!...
     

Diese Seite empfehlen