Androidシミュレータの横画面切り替え方法


Androidシミュレータが起動している場合は、ショートカットキーF 12またはCtrl+F 11を使用して切り替えることができます.もちろんコマンドラインでシミュレータを起動するだけでパラメータemulatorを使用することができる.exe-skin HVGA-Lを起動します.
 
プログラムはonCreateを再ロードし、避ける方法はandroidmanifestを通過することができることに注意してください.xmlファイルで方向を再定義し、Activityの書き換えonConfigurationChanged(Configuration newConfig)メソッドに従って制御します.
 
ActivityのConfigChangesプロパティ
公式解釈:この属性を設定することでActivityスナップデバイスの状態を変化させることができ、以下は識別可能な内容である.
CONFIG_FONT_SCALE
CONFIG_MCC
CONFIG_MNC
CONFIG_LOCALE
CONFIG_TOUCHSCREEN
CONFIG_KEYBOARD
CONFIG_NAVIGATION
CONFIG_ORIENTATION

設定方法:次のフィールドを「|」で区切ります.たとえば、「locale|navigation|orientation」などです.
Value
Description
“mcc“
The IMSI mobile country code (MCC) has changed ― that is, a SIM hasbeen detected and updated the MCC.モバイル国家番号は、3桁の数字で構成されており、どの国にも独自のMCCがあり、携帯電話ユーザーの所属国を識別することができる.
“mnc“
The IMSI mobile network code (MNC) has changed ― that is, a SIM hasbeen detected and updated the MNC.携帯電話のユーザーを区別するためのサービス業者.
“locale“
The locale has changed ― for example, the user has selected a new language that text should be displayed in.ユーザーの所在地が変わります.
“touchscreen“
The touchscreen has changed. (This should never normally happen.)
“keyboard“
The keyboard type has changed ― for example, the user has plugged in an external keyboard.キーボードモードが変わります.たとえば、ユーザーが外部キーボード入力にアクセスするなどです.
“keyboardHidden“
The keyboard accessibility has changed ― for example, the user has slid the keyboard out to expose it.ユーザーが携帯電話のハードウェアキーボードを開く
“navigation“
The navigation type has changed. (This should never normally happen.)
“orientation“
The screen orientation has changed ― that is, the user has rotated the device.デバイスの回転、横表示、縦表示モードの切り替え.
“fontScale“
The font scaling factor has changed ― that is, the user has selected a new global font size.グローバルフォントサイズの拡大・縮小
 
 
1、Activityのandroid:configChangesを設定しない場合、スクリーンは各ライフサイクルを再呼び出し、横スクリーンを切る場合は1回、縦スクリーンを切る場合は1回、ネット上では2回、私はandroid 2にいます.3のシミュレータも2.3携帯電話も試してみましたが、一度だけでした.でもandroid 2.2のシミュレータでテストしましたが、縦スクリーンを切ると宣言サイクルが2回実行されます.
2、Activityのandroid:configChanges="orientation"を設定すると、スクリーンは各ライフサイクルを再呼び出し、横、縦のスクリーンを切ると1回しか実行されず、縦のスクリーンを切ると最後にonConfigurationChangedも呼び出されます.シミュレータは以上のように実行されますが、携帯電話では宣言周期は実行されず、onConfigurationChangedのみが実行されます
3、Activityのandroid:configChanges="orientation|keyboardHidden"を設定すると、スクリーンカットは各ライフサイクルを再呼び出しせず、onConfigurationChangedメソッドのみが実行されます