如何让一个活动进入后台而不调用其finish()
方法,并返回启动它的父活动?我尝试了很多次,但是无法找到解决方案。如果你们能帮忙,我将非常感激。
如何让一个活动进入后台而不调用其finish()
方法,并返回启动它的父活动?我尝试了很多次,但是无法找到解决方案。如果你们能帮忙,我将非常感激。
public void onBackPressed () {
moveTaskToBack (true);
}
@Override
以避免出现错误和预期行为。 - mathematics-and-caffeine简单地说
protected void minimizeApp() {
Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(startMain);
}
Thread t1 = new Thread(new Runnable() {
@Override
public void run() {
// PUT YOUR CACHING CODE HERE
}
});
t1.start();
setResult( whatever );
finish();
new CacheDataTask().execute( data params );
set_result( whatever );
finish();
AsyncTask用于需要在新线程中处理某些内容,但仍需与UI进程进行通信的情况。
尝试:
Intent toNextActivity = new Intent(CurrentActivity.this,
NextActivity.class);
CurrentActivity.startActivity(toNextActivity);
onPause()
和onStop()
。不会发生的是在新的Activity开始加载和执行时,进程继续执行。请参见我的答案以获取解决方案。 - stormin986将任务向后移动并不会确保您保留任何状态,除非您通过响应Activity
生命周期事件手动执行。
您应该只需使用startActivity()
通过Intent
启动第二个Activity
,或者如果您需要从第二个Activity
返回结果,则使用startActivityForResult()
。这允许您在用户完成Activity
并返回到您的第一个Activity
时接收回调。
启动Activity
并获取结果:http://developer.android.com/reference/android/app/Activity.html#StartingActivities