Chi*_*iya 5 configuration tabs android
我在我的应用程序中遇到了奇怪的问题.我在这里问的主要问题.问题是android:configChanges="keyboardHidden|orientation" 我的代码不起作用.
所以我找到了通过@Override onConfigurationChanged()我的代码中的方法来管理它的解决方案来管理方向.但问题仍未得到妥善解决.
目前的问题是,onConfigurationChanged()当我们将方向景观更改为纵向时,它会调用两次.
如果我们将手机纵向更改为横向更改和工作,但现在当用户将手机横向移至纵向时, onConfigurationChanged()将调用并返回相同的方向状态,在第二次调用中它将返回纵向.
代码:
@Override
public void onConfigurationChanged(Configuration newConfig)
{
super.onConfigurationChanged(newConfig);
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE)
{
Log.e("On Config Change", "LANDSCAPE");
Toast.makeText(getApplicationContext(), "L", Toast.LENGTH_LONG)
.show();
} else
{
Log.e("On Config Change", "PORTRAIT");
Toast.makeText(getApplicationContext(), "P", Toast.LENGTH_LONG)
.show();
}
}
Run Code Online (Sandbox Code Playgroud)
日志
first mode its port mode , so change in land mode
02-28 12:10:06.274: E/On Config Change(540): LANDSCAPE
02-28 12:10:14.154: E/On Config Change(540): LANDSCAPE
// here after changed the land mode try to chage in port mode then its calling two times as you can see as per the log
02-28 12:10:14.593: E/On Config Change(540): PORTRAIT
02-28 12:11:39.524: E/On Config Change(540): LANDSCAPE
Run Code Online (Sandbox Code Playgroud)
还有一个问题相同的问题>>
当我们改变方向时(在呼叫时onConfigurationChanged),它将终止当前活动.所以我有不同的文件夹按我以前的question.So在两个布局,当我改变屏幕活动将删除所有data.so我怎么能保存数据,显示用户在用户更改手机定位在任何情况下.
我不确定如何被调用两次,但为了避免应用程序中出现错误行为 ,如果现在收到的方向与之前的方向相同,onConfigurationChanged()您可以取消执行。onConfigurationChanged()为我工作,希望它也适合你:)
| 归档时间: |
|
| 查看次数: |
1189 次 |
| 最近记录: |