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

richtiges Activity starten

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von joschika77, 11.12.2009.

  1. joschika77, 11.12.2009 #1
    joschika77

    joschika77 Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    129
    Erhaltene Danke:
    1
    Registriert seit:
    26.05.2009
    Hallo, hatte hier vor längerer Zeit eine ähnlich Frage schon einmal gestellt. Leider kam da nicht so recht was raus bei. Deswegen versuche ich das Szenario noch einmal zu beschreiben. Also, ich habe eine Hauptklasse die von TabActivity erbt. Darauf befindet sich ein Button der ein anderes Fenster/Activity öffnet. Nun ist das Activity auf dem Screen und ich klappe beim G1 die Tastatur auf oder beim Galaxy kippe ich das Telefon einfach. Und nun mein Problem...Er startet nicht die letzte Activity sondern nimmt einfach das Hauptfenster und zeigt es an. Eigentlich sollte er doch das letzte Activity wieder anzeigen oder irre ich mich da? Hab da schon einiges probiert was leider kein Erfolg brachte. Also mit onConfigurationChanged() usw. Wo muß ich da ansetzen? Für Hilfe wäre ich sehr dankbar.

    MfG
     
  2. swordi, 11.12.2009 #2
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    er lädt das aktuelle aktivity einfach neu

    wie startest du mittels button das neue ?

    startActivityForResult() bzw. startActivity() ?

    oder anders?
     
  3. joschika77, 11.12.2009 #3
    joschika77

    joschika77 Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    129
    Erhaltene Danke:
    1
    Registriert seit:
    26.05.2009
    Hallo Swordi...hier der Code

    Code:
    	    myPostingTypeSwitchButton = (Button)findViewById(R.id.postingTypeSwitchBtn);
    	    myPostingTypeSwitchButton.setText(EGlobals.ourPostingType.PostingTypeName());
    	    myPostingTypeSwitchButton.setOnClickListener(new OnClickListener()
    	    {
    	        public void onClick(View v) 
    	        {
    	        	if(myIntentCatPos == null)
    	        		myIntentCatPos = new Intent(main.this,ECategoryPostingTypeActivity.class);
    	        	main.this.startActivityForResult(myIntentCatPos,EGlobals.ACTIVITY_CAT_POS_REQUEST_CODE);
            	}
        	});
    
     
  4. swordi, 12.12.2009 #4
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    hmm sieht eigentlich ganz ok aus.

    müsste damit ein eigenständiges activity starten.

    weiß im moment nicht mehr. werd nochmal nachdenken
     
  5. joschika77, 07.01.2010 #5
    joschika77

    joschika77 Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    129
    Erhaltene Danke:
    1
    Registriert seit:
    26.05.2009
    Hallo Leute, muss das Thema nochmal aufrollen. Ich bekomme es einfach nicht hin. Zudem habe ich noch ein neues Problem. Ich habe eine Activity1(Main) und von dort aus rufe ich per Button die Activity2 auf. Wenn ich jetzt diese Activity beende befinde ich mich in der
    Code:
    onActivityResult(int requestCode,int resultCode,Intent data)
    Methode in der MainActivity und frage dort den resultCode ab oder sonst was. Das klappt auch alles sehr gut. Nun rufe ich von Activity2 wieder per button Activity3 auf. In Activity2 habe ich ebenfalls die
    Code:
    onActivityResult(int requestCode,int resultCode,Intent data)
    Methode eingefügt. Nur leider geht er beim Canceln oder OkResult da niemals rein. Er landet immer in der Main-onActivityResult und hat zudem noch den falschen resultCode. Wie kann das sein? Außerdem ist er nach dem Canceln der Activity3 auch wieder auf der HauptActivity. Kann doch nicht sein. Kann keiner helfen bei dem Problem?

    MfG

    Ach so. Die mainActivity ist eine TabActivity. Wollte es nur mal anmerken.
     
  6. joschika77, 07.01.2010 #6
    joschika77

    joschika77 Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    129
    Erhaltene Danke:
    1
    Registriert seit:
    26.05.2009
    Hab den/die Fehler gefunden. Ich hatte die folgenden Zeilen in die onDestroy() Methode geschrieben.

    Code:
        	this.setResult(Activity.RESULT_CANCELED);
        	this.finish();
    
    Das finish() war zuviel. Oh man...Naja trotzdem gelöst der Fall. :)

    MfG
     
  7. garak, 07.01.2010 #7
    garak

    garak Ehrenmitglied

    Beiträge:
    8,270
    Erhaltene Danke:
    4,795
    Registriert seit:
    12.12.2009
    Edit: hat sich ja erledigt.
     

Diese Seite empfehlen