Hallo zusammen
Ich habe jetzt zwar einen Fehler bei mir gefunden, aber das Problem ist im Prinzip immer noch das selbe. Ich hatte einen onDestroy Methode, welche die Subactivity beim öffnen verhinderte und die Mainactivity neu startete. D.h. ich kann jetzt die Subactivity öffnen und diese bleibt.
Allerdings wenn ich zurückgehe mit back, dann wird die Mainactivity neu gestartet. ( Wie die Entwickleroption auch aussagt, keine Aktivitäten behalten )
Ich habe das anhand eines ganz neuen Beispiels, sogar vom Eclipse Framework ohne selber zu codieren erstellt, ausprobiert.
Es ist meiner Meinung nach so, dass die Mainactivity gekillt wird. Man sieht das vielleicht nicht, wenn man nicht explizite prüft.
Folgend mein neu aufgebautes Beispiel. Beim start wird ein Toast mit "first start of application ..." ausgegeben. Mit dem Contextmenu öffne ich eine Subactivity ( Ich habe nichts selber codiert, sondern das Framework hat mir ein HelloWorld Activity erstellt. ) Ich sehe das HelloWorld erscheinen.
Mit back möchte ich auf die vorherige Maske zurück. Geht, aber es erscheint erneut die Meldung "first start of application ...".
Hat jemand einen Tip, wie man dem begegnen könnte ?
1package com.example.textactivities;
2
3
4import android.os.Bundle;
5import android.app.Activity;
6import android.content.Intent;
7import android.view.Menu;
8import android.view.MenuInflater;
9import android.view.MenuItem;
10import android.widget.Toast;
11import android.support.v4.app.NavUtils;
12
13public class MainActivity extends Activity {
14
15 boolean bfirststart=true;
16
17 @Override
18 public void onCreate(Bundle savedInstanceState) {
19 super.onCreate(savedInstanceState);
20 setContentView(R.layout.activity_main);
21
22 if (bfirststart){
23 Toast.makeText(this, "first start of application ...", Toast.LENGTH_LONG).show();
24 bfirststart=false;
25 }
26 }
27
28 @Override
29 public boolean onCreateOptionsMenu(Menu menu) {
30 getMenuInflater().inflate(R.menu.activity_main, menu);
31 return true;
32 }
33
34 @Override
35 public boolean onOptionsItemSelected(MenuItem item) {
36 switch (item.getItemId()) {
37
38 case R.id.menu_settings: //Toast.makeText(this, "You pressed the icon and text!", Toast.LENGTH_LONG).show();
39 Intent myIntent2 = new Intent(this, SubActivity.class);
40 startActivityForResult(myIntent2, 0);
41 break;
42 }
43 return true;
44 }
45}
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.