2011-07-07 5 views
1

私は3つの子アクティビティA、B、Cを持つタブアクティビティを持っています。子アクティビティAとBはタブアクティビティの向きに従います。つまり、タブのアクティビティが縦向きの場合、タグのアクティビティがランドスケープの場合はAとBになります。Android:Landscapeタブでの子アクティビティのアクティビティ

子アクティビティCは、タブのアクティビティの向きに関係なく常に横向きにする必要があります(アンドロイド: screenOrientation = "sensorLandscape")。これは可能ですか?

私は、動作しないマニフェストでCのandroid:screenOrientation = "sensorLandscape"を試してみました。私が管理することができる最高は

this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 

C(onResumeで())

this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 

とAとBIは、使用のために((もonResumeで))で次のように使用することです。しかし、これは全体を反転させますタブは、私が探している効果ではありません。

答えて

0

私は初心者ですが、私が言うことのできるのは、タブのレイアウトは、あなたがその中で行うことについて非常に嫌なことです。すべての風景を作ってみて、Cが動いてから2つのa/bタブのorientarionを変えてみてください...幸運!

0

AndroidManifestでこれを使用します。

<activity android:name=".YourClass" android:screenOrientation="portrait"></activity> 
+0

私は、TabActivityと子アクティビティでandroid:screenOrientationのすべてのバリエーションを試しました。親タブのアクティビティが縦向きのままである間に、子アクティビティを横向きにすることはできません。 – Sandstone

+0

これをチェックすると便利かもしれません:http://stackoverflow.com/questions/6557107/how-to-set-orientation-in-two-different-mode-in-two-layout/6557143#6557143 –

0

私は同じ問題に直面しました。それは良い解決策である場合には知らないが、次のように私が見つけた回避策は次のとおりです。 活動C.のsetContentView()onCreate()の方法の前にthis.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);を入れて、他の二つの活動(AとB)のsetContentView()onCreate()の方法の前にthis.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);を置きます。

他の優雅な解決策は高く評価されます。

関連する問題