我有两项活动。 其中之一是一种家庭活动(有一些选择),另一种是主要活动。 使用方法:
<activity
android:name=".Home"
android:label="@string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:screenOrientation="portrait">
</activity>
在Home.java中我设置:
@Override
protected void onPause() {
super.onPause();
finish();
}
@Override
protected void onStop() {
super.onStop();
finish();
}
在MainActivity.java
我在方法onPause()
和onStop()
中无所作为。
问题是,如果我在MainActivity中设置回来,应用程序就在我的后台应用程序中,我可以看到MainActivity的屏幕。
但是当我重新启动应用程序时,它会以Home重新启动。
那么,如何使用MainActivity重新启动?感谢
答案 0 :(得分:0)
如果您希望应用程序始终从MainActivity启动,则需要在清单文件中将intent-filter移动到它。
<activity
android:name=".Home"
android:label="@string/app_name"
android:screenOrientation="portrait">
</activity>
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
您也会遇到此行为,因为您在onStop()中调用了finish()。如上所述here,您在onStop()中强制使用onDestroy()。
答案 1 :(得分:0)
试试这个:
@Override
protected void onPause() {
super.onPause();
system.exit(0);
}