如何在旋转屏幕时保持android搜索对话框?
我基于代码Searchable Dictionary v2构建了一个搜索小部件。一切工作正常,但有一个问题。如何在旋转屏幕时保持android搜索对话框?
如果我将屏幕从纵向旋转到横向或反之亦然,当搜索对话框打开时,文本编辑框和键盘屏幕会消失并再次运行。
有没有什么办法可以让它将编辑框切换到专用模式(横向或纵向)而无需退出并重新运行对话框?
您可以使用可搜索词典检查行为。 我想要的东西就像谷歌搜索部件。它只是在保持屏幕的同时切换编辑框模式。
一旦屏幕方向改变,Android会创建一个新的活动/视图,所以您可能必须自己处理屏幕方向。我成功地在应用中使用了这个解决方案,我假设它也适用于小部件。
参见如何做到这页:
http://www.androidpeople.com/android-how-to-handle-screen-orientation-change-issue/
其他一些有用的提示(基本上是相同的解决方案)在这里:
How do I handle screen orientation changes with an activity started within a tab's activity
How to handle screen orientation change when progress dialog and background thread active?
有关的onPause的一些信息()和的onSaveInstanceState()(如您使用的是小部件可能不适用,但以防万一:))是在这里:
How do I disable orientation change on 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);
网址不再起作用。你能描述一下解决方案吗?我尝试重新创建搜索过程,以扩展工具栏中的搜索操作,并输入用户搜索文本。这工作,直到我完成搜索。此时工具栏中的图标消失。导航图标和溢出(三个点)图标仍然存在,但我的搜索图标(和上传图标)在那里消失了。他们在另一个屏幕上旋转恢复 – 2018-02-23 14:03:51