[英]How to keep android search dialog on when rotating screen?
我基于代码Searchable Dictionary v2构建了一个搜索小部件。 一切正常,但是有一个问题。
如果在搜索对话框打开时将屏幕从纵向旋转为横向,反之亦然,则文本编辑框和键盘屏幕消失并再次运行。
有什么办法可以使编辑框切换到适当的模式(横向或纵向),而无需退出并重新运行对话框?
您可以使用可搜索的词典检查行为。 我想要类似Google搜索窗口小部件的东西。 它仅在保持屏幕显示的同时切换编辑框模式。
更改屏幕方向后,Android会创建一个新的活动/视图,因此您可能必须自己处理屏幕方向。 我在应用程序中成功使用了该解决方案,我认为它也适用于小部件。
请参阅此页面以了解如何执行此操作:
http://www.androidpeople.com/android-how-to-handle-screen-orientation-change-issue/
其他一些有用的提示(基本上是相同的解决方案)在这里:
如何通过选项卡活动中开始的活动来处理屏幕方向更改
当进度对话框和后台线程处于活动状态时,如何处理屏幕方向变化?
有关onPause()和onSaveInstanceState()的一些信息(在您使用小部件时可能不适用,但以防万一:))在这里:
如何在Android上禁用方向更改?
我所做的是在显示对话框时锁定方向,然后在完成后将其解锁:
int currentOrientation = getResources().getConfiguration().orientation;
if (currentOrientation == Configuration.ORIENTATION_LANDSCAPE) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE); //locks landscape
}
else {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT); //locks port
}
// do work
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.