我在我的应用程序中使用了android搜索对话框,它在纵向方向上工作正常。但是一旦你翻转到横向,搜索页面xml就会被一个大的白色对话框所覆盖。如果您进行搜索,该框仍然存在,并且您点击设备或模拟器上的后退按钮,大白框滑开并且有搜索结果。似乎代码中的某个地方布局宽度设置为fill_parent或其他东西。我一直在寻找解决方案,有人建议将android:imeOptions="flagNoExtractUi"
添加到xml文件夹中的seachable.xml,但这似乎没有任何效果。
我发现这是onSearchRequested();
方法,它会抛出填满屏幕的白色方框。它也可能与在横向,垂直方向上不调用软件键盘这一事实有关。
答案 0 :(得分:0)
您可以以活动的形式创建自己的对话框。你这样做:
<activity
android:theme="@android:style/Theme.Dialog"
android:configChanges="keyboardHidden|orientation|screenSize"
android:name="ExampleActivity" >
</activity>
当然,可以通过XML以任何方式安排此活动。这样,您可以优雅地处理从纵向到横向的更改。
注意:如果您使用的是ICS(14 +),则只需要“screenSize”属性。