0

我在我的应用程序中使用了一个 android 搜索对话框,它在纵向方向上运行良好。但是,一旦您翻转到横向,searchpage xml 就会被一个大的白色对话框覆盖。如果您进行搜索,该框仍然存在,并且您点击设备或模拟器上的后退按钮,白色的大框滑开并出现您的搜索结果。似乎代码中的某个地方将布局宽度设置为 fill_parent 或其他东西。我四处寻找解决方案,有人建议android:imeOptions="flagNoExtractUi"在 xml 文件夹中添加到 seachable.xml ,但这似乎没有任何效果。

我发现这onSearchRequested();是抛出填充屏幕的白框的方法。这也可能与在横向、垂直方向时不调用软件键盘这一事实有关。

4

1 回答 1

0

您可以以 Activity 的形式创建自己的 Dialog。你这样做:

 <activity
    android:theme="@android:style/Theme.Dialog"
    android:configChanges="keyboardHidden|orientation|screenSize"
    android:name="ExampleActivity" >
 </activity>

这个活动当然可以通过 XML 以任何你喜欢的方式排列。这样,您可以优雅地处理从纵向到横向的变化。

注意:如果您使用的是 ICS (14+),则只需要“screenSize”属性。

于 2012-06-04T20:30:43.770 回答