2014-10-11 145 views
1

onCreateonConfigurationChange调用。有两个活动:FirstActivity开始SecondActivity。但是SecondActivity,这是一个本机活动,并且当我从SecondActivity按Home键时的预期行为将从应用程序退出。目前,在SecondActivityonConfigurationChange请致电onCreate如何通过onConfigurationchange避免onCreate呼叫

A->B 

在活性的,我使用这个代码

public void onCreate(Bundle savedInstanceState) { 

super.onCreate(savedInstanceState); 
Log.i("Search Activity", "onCreate() was called."); 
Intent intent = new Intent(this, B.class); 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | IntentCompat.FLAG_ACTIVITY_CLEAR_TASK); 
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
startActivity(intent); 
finish(); 

}

活性B(调用一些本机方法)简单重写onConfigurationChange

@Override 
public void onConfigurationChanged(Configuration newConfig) { 
super.onConfigurationChanged(newConfig); 
} 
在清单

文件

<activity 
android:name=.B" 
android:configChanges="locale|screenlayout|keyboard|keyboardHidden|navigation|orientation|screensize"> 

+3

请编辑您的问题,并使其可读性。 – 2014-10-11 18:12:38

回答

0
<activity 
android:name=".B" 
android:configChanges="locale|screenlayout|keyboard|keyboardHidden|navigation|orientation|screensize" 
android:launchmode="SingleTask"> 

单任务会阻止你的多个实例。

+0

我已经使用它,但忘了提及任何其他解决方案 – user3771709 2014-10-12 03:40:06