![](/img/trans.png)
[英]How to solve the screen orientation change when Activity finish in Android 8.1?
[英]android - how to finish an activity when the orientation is changed?
如果用户在使用过程中改变方向,我想要做的是关闭Activity
。
我在清单中添加了以下行到此活动 -
android:configChanges="orientation"
而且我还覆盖onConfigurationChanged
:
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
finish();
}
但似乎它没有成功,所以我在这里做错了什么?
还要添加keyboardHidden 和screenSize。
android:configChanges="orientation|keyboardHidden|screenSize"
注意:screenSize 仅适用于您的应用程序以 API 13 级或更高级别为目标。
我不认为这种行为对用户有好处。 如果他们不小心旋转了设备,应用程序会立即关闭吗? 默认为横向的设备(某些平板电脑和 chromebook)呢? 用户会认为你的应用程序有问题并且已经崩溃。 或者如果他们不小心旋转了他们的设备,它是否会击中用户“游戏结束”的情况? (即。也许平衡他们的手机在他们的鼻子上?)
对于大多数应用程序的需求顺序:
int a=3;
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
// Checks the orientation of the screen
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
if(a==3 || a==0)
{
a=0;
}else
{ finish(); }
} else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
if(a==3 || a==1)
{
a=0;
}else
{ finish(); }
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.