0

ダイアログを常に縦向きに表示する方法はありますか? レイアウトのために必要です。

私はそれをActivityに設定できることを知っています

android:screenOrientation="portrait|reversePortrait"

しかし、ダイアログはどうですか?

4

2 に答える 2

2

ダイアログが表示された時点で、デバイスの向きを確認してください。

Display display = ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay();
int orientation = display.getOrientation();
//if orientation is portrait then show, if not then don't.
于 2011-12-27T22:45:05.470 に答える
1

これらの方法があなたの要件に合っているかどうかわからない、

1 つの方法は、Activity を画面の向きを縦向き (ダイアログ テーマを使用) に設定したダイアログとして表示することDialogActivityです。ApiDemos

もう 1 つの方法は、アクティビティの向きを強制的に変更することです。

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

ダイアログを開きますonConfigurationChanged()(いくつかのロジックを使用)。

于 2013-06-04T13:05:44.167 に答える