2012-02-16 25 views
0

Androidデバイスのすべてのアプリケーションに対して、画面をランドスケープモードまたはパトリオットモードにロックしたいとします。 自動画面の向きを無効にすると、どうすればよいですか?Androidデバイスの画面の向きをグローバルにロックする方法

私はアンドロイドマーケットからいくつかのアプリをチェックアウトして、彼らが何をしているのか試してみました。 これらのアプリは、このようにWindowManagerを操作するサービスを作成するようです。

WindowManager wm = (WindowManager)getSystemService(CONTEXT.WINDOW_SERVICE); 
CustomLayout cl = new CustomLayout(desire_orientation); 
View localView = new View(this); 
wm.addView(localView, cl); 

しかし、私はこのようなことをしないとき。何か案が?

また、私はフレームワークコードをJavaからC++に変更することができます。これを行うには他の方法がありますか?

+0

あなたはこの [リンク]を試すことができます[1] [1]:http://stackoverflow.com/questions/5112118/how-to-detect-orientation-of-android-device – Newts

+1

他のアプリの機能を潜在的にロックすることは、Androidプラットフォームで許可されているようなものではありません。私は間違っている可能性があります! –

答えて

0
WindowManager.LayoutParams params = new WindowManager.LayoutParams(); 
params.screenOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT; 
wm.addView(localView, params); 

これは私のために働く。

+0

ありがとうございました!しかし、今私は問題を抱えている、私はポートレートモードで電話を回転させ、ウィンドウを閉じると再び表示されます –

関連する問題