0

アプリで Android 検索ダイアログを使用していますが、縦向きで正常に動作します。しかし、横方向に反転するとすぐに、検索ページ xml が大きな白いダイアログ ボックスで覆われているように見えます。検索を行うと、ボックスがまだそこにあり、デバイスまたはエミュレーターの戻るボタンを押すと、大きな白いボックスがスライドして離れ、検索結果が表示されます。コードのどこかで、レイアウト幅が fill_parent などに設定されているようです。私は解決策を探し回り、誰かがandroid:imeOptions="flagNoExtractUi"xml フォルダーの seachable.xml に追加することを提案しましたが、それは何の効果もないようです。

onSearchRequested();画面いっぱいに白い箱を吐き出しているのはメソッドだということがわかりました。また、ソフトウェア キーボードが横向き、縦向きのときに呼び出されないという事実にも関係している可能性があります。

4

1 に答える 1

0

アクティビティの形式で独自のダイアログを作成できます。次のようにします。

 <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 に答える