然后在我的应用程序中有 103 个活动,依次为 SplashActivity -> Menu ---> Q_001 ---> Q_002 ... (...) ..... Q_finish。在每个活动中,我都有一个用于退出应用程序的按钮(如主页按钮),以及一个返回菜单的按钮。现在我希望如果用户杀死该应用程序,并在另一个时间打开它返回到正在使用的活动,
我知道我必须尝试更改 SplashActivity 你正在做的最后一个活动,如果你没有进行任何活动来继续他的工作,这是 SplashActivity 的代码:
package org.somename;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle TravisIsAwesome) {
super.onCreate(TravisIsAwesome);
setContentView(R.layout.splash);
Thread logoTimer = new Thread (){
@Override
public void run(){
try{
sleep(500);
Intent menuIntent = new Intent("org.somename.MENU");
startActivity(menuIntent);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
finish();
}
}
};
logoTimer.start();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
一直说我不在乎保存活动菜单,而是保存从“Q_001”开始到结束活动“Q_finish”的所有活动。我尝试使用新的这种方法:我在上一个问题中提出了建议,并且我已经实现了这个代码:
package org.somename;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle TravisIsAwesome) {
super.onCreate(TravisIsAwesome);
setContentView(R.layout.splash);
int last_activity = getLastActivityIdFromSharedPreferences();
if (last_activity == 1)
{
this.startActivity(new Intent(this, Q_001.class));
finish();
}
int last_activity2 = getLastActivityIdFromSharedPreferences2();
if (last_activity2 == 2)
{
this.startActivity(new Intent(this, Q_002.class));
finish();
}
Thread logoTimer = new Thread (){
@Override
public void run(){
try{
sleep(500);
Intent menuIntent = new Intent("org.somename.MENU");
startActivity(menuIntent);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
finish();
}
}
};
logoTimer.start();
}
private int getLastActivityIdFromSharedPreferences2() {
// TODO Auto-generated method stub
return 2;
}
private int getLastActivityIdFromSharedPreferences() {
// TODO Auto-generated method stub
return 1;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
但它不是 SplahActivity 的一部分,并且不会返回执行的 Activity。直接进入菜单,带有空白页的SplahActivity
预先感谢