我的应用仅包含一项活动和广告活动。它运作良好,但是当我按下“返回”按钮时,我的应用程序关闭了,我看到的是黑色背景,而不是墙纸,它被部分滚动了。我也可以看到所有图标。屏幕的黑色部分消失了,我可以看到正常的屏幕墙纸。它只花不到一秒钟的时间,但是很烦人。我找不到问题所在。
按返回按钮后,我的活动仅具有水平方向,并具有正确的生命周期(onPause-onStop-onDestroy
)。广告活动根本没有启动。
我没有覆盖onPause() onStop() onDestroy()
。
我的清单
<application
android:allowBackup="true"
android:icon="@mipmap/icon_transp_bkg"
android:label="@string/app_name"
android:largeHeap="true"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name="MainActivity"
android:screenOrientation="sensorLandscape"
android:configChanges="orientation|screenSize"
android:theme="@style/PlayTheme2">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.google.android.gms.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
android:theme="@android:style/Theme.Translucent" />
</application>
可能与后退堆栈有关,并试图搜索以前的活动吗?
请让我以正确的方式解决问题。提前谢谢。
答案 0 :(得分:0)
您可以使用OnBackPressed
@Override
public void onBackPressed() {
// what you want to do when back button is pressed
}
答案 1 :(得分:0)
您可以在活动中覆盖OnBackPressed方法
@Override
public void onBackPressed(){
finish();
}
并调用FINISH方法,这将正确关闭您的活动和应用程序。
答案 2 :(得分:0)
保留Back-Stack,并尝试搜索以前的活动。 遍历onBackPressed并调用一次结束两者。
public void onBackPressed(){
finish();
}