Toast正在更改仅限纵向应用

时间:2018-06-12 10:55:04

标签: android android-orientation android-toast

这是主要节日:

 <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正在启动Main2ActivityonBackPressed() 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点出现这种行为?

mainActivity

Main2Activity

After pressing the back button on Main2Activity

2 个答案:

答案 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();
}

希望它能起作用!!