2012-06-15 14 views
14

2.2のアンドロイドアプリケーションで作業していて、landscapeモードでアプリケーションを設定したいと思います。双方向のアンドロイドで向きを設定する

私は自分のmanifestにすべてのアクティビティタグandroid:screenOrientation="landscape"を追加して、うまくいきました。

しかし、それは一方の側にのみ来ます。デバイスを逆さまにすると、landscapeモードの同じ位置に収まります。デバイスの両側にランドスケープモードを設定するにはどうすればよいですか。私を助けてください。

ありがとうございます。

+0

申し訳ありません。私はこれを試して、私のシナリオでは動作していないことを発見 – Arun

+0

EclairとFroyoは片面だけです。ジンジャーブレッドと後で両側でそれを行うことができます。 – t0mm13b

答えて

43

をお試しくださいAndroid 2.2以前のアプリですが、Android 2.3以降で「sensorLandscape」設定として実行したい場合は、次のように試してみてください。

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD) { 
     setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE); 
    } 
+0

アンドロイド2.2でこのプログラマビリティを行う方法はありますか? – Arun

+0

正式にはありません! –

+0

これは、ビューを正常に回転させますが、イベントは発生しません。オリエンテーションが通常ビューから逆ビューに変わるときにイベントをキャプチャする必要があります。どうやってするか? – StarDust

1

私は2.2わからないですが、あなたは、Android 2.3用のアプリを構築し、新しいしている場合、あなたが構築している場合は、活動にマニフェスト

android:screenOrientation="sensorLandscape" 

を設定することができ、この

android:screenOrientation="reverseLandscape" 
+0

アンドロイド2.2私は、アクティビティタグのアンドロイド:screenOrientationにreverseLandscapeという名前のプロパティを取得しません。どのバージョンでこのプロパティを取得していますか? – Arun

+0

ああ、申し訳ありません、このプロパティはAPIレベル9以降です(アンドロイド2.3用) –

+0

他のオプションはありますか? – Arun

-1

これを使用すると、あなたに役立つと思います。

addEventListener(StageOrientationEvent.ORIENTATION_CHANGE, onOrientationChange); 

function onOrientationChange(event:StageOrientationEvent):void { 
    trace("onOrientationChange:"+event.afterOrientation); 
    ...and process result. 
    } 
}