1

少し前に Rotation Locker アプリをインストールしました。それはシンプルなアプリですが、とてもうまく機能します。他のすべてのアプリを強制的に横向きまたは縦向きモードで実行できます。どうすればこれを行うことができるかを理解するのに苦労しています。誰か教えてください。

4

2 に答える 2

1

他の投稿からのデータをつなぎ合わせると、まさにこれを行う必要がある、私が書いているアプリでこれを解決する方法がわかりました。(興味がある場合は、ドックの回転を強制します)。

私の解決策には、ウィンドウを作成し、それをビュー階層の一番上に挿入して、別のアプリが設定しようとする前に方向を最初に叫ぶことができるようにすることが含まれます...

orientationChanger = new LinearLayout(this);
// Using TYPE_SYSTEM_OVERLAY is crucial to make your window appear on top
// You'll need the permission android.permission.SYSTEM_ALERT_WINDOW
WindowManager.LayoutParams orientationLayout = new WindowManager.LayoutParams(WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY, 0, PixelFormat.RGBA_8888);
// Use whatever constant you need for your desired rotation
orientationLayout.screenOrientation = ActivityInfo.SCREEN_ORIENTATION_SENSOR;

WindowManager wm = (WindowManager) this.getSystemService(Service.WINDOW_SERVICE);
wm.addView(orientationChanger, orientationLayout);
orientationChanger.setVisibility(View.VISIBLE);

インスピレーションを得たこの回答の功績: Android で画面の向きをグローバルに強制するにはどうすればよいですか?

于 2013-02-13T20:46:16.567 に答える
0

おそらく、SEARCH ボタンまたはその他のボタンを押したままにすることができます。

これは、HTC Desire での動作方法です。

于 2012-04-28T16:36:42.787 に答える