这是主要节日:
<activity android:name=".MainActivity"
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=".Main2Activity"
android:screenOrientation="portrait">
</activity>
我们有两个活动,两者的方向是仅限于纵向,如清单中所指定。 MainActivity
正在启动Main2Activity
,onBackPressed()
Main2Activity
被覆盖并显示Toast
代码如下:
@Override
public void onBackPressed() {
Toast.makeText(Main2Activity.this,"This is from Second",Toast.LENGTH_SHORT).show();
super.onBackPressed();
}
问题陈述:
1.将手机置于风景中
2.启动App
3. MainActivity
在肖像中创建(此处无问题)
4.从Main2Activity
启动MainActivity
,有一个按钮可以执行此操作
5. Main2Activity
纵向打开(直到这里没问题)
6.按硬件后退按钮,Main2Activity
消失
7.使用Toast MainActivity
以横向显示,然后它会自动更改为纵向
8.在所有这些步骤中,设备处于横向状态
9.尝试将上下文更改为应用程序上下文但没有运气
10.删除Toast,一切都按预期工作
为什么在第7点出现这种行为?
答案 0 :(得分:0)
尝试在super.onBackPressed();
之后添加toast答案 1 :(得分:0)
更改你的onBackPressed()覆盖表格
@Override
public void onBackPressed() {
Toast.makeText(Main2Activity.this,"This is from Second",Toast.LENGTH_SHORT).show();
super.onBackPressed();
}
到此
@Override
public void onBackPressed() {
super.onBackPressed();
Toast.makeText(Main2Activity.this,"This is from Second",Toast.LENGTH_SHORT).show();
}
希望它能起作用!!