「縦向き」モードを強制する 質問する

「縦向き」モードを強制する 質問する

私のアプリケーションは「ランドスケープ」モード用に設計されていないため、アプリケーションに「ポートレート」モードを強制しようとしています。

いくつかのフォーラムを読んだ後、マニフェスト ファイルに次の行を追加しました。

<application 
  android:debuggable="true"
  android:icon="@drawable/icon" 
  android:label="@string/app_name"
  android:screenOrientation="portrait">

しかし、私のデバイス (HTC Desire) では動作しません。マニフェスト ファイルの行を無視して、「縦」から「横」に切り替わります。

さらにフォーラムを読んでから、マニフェスト ファイルにこれを追加してみました。

<application 
  android:debuggable="true"
  android:icon="@drawable/icon" 
  android:label="@string/app_name"
  android:configChanges="orientation"       
  android:screenOrientation="portrait">

そして、アクティビティ クラスのこの関数:

public void onConfigurationChanged(Configuration newConfig)
{
    super.onConfigurationChanged(newConfig);
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}

しかし、またしても運がなかった。

ベストアンサー1

アプリケーション要素に方向を適用しないでください。代わりに、アクティビティ要素に属性を適用し、configChanges以下に示すように設定する必要があります。

例:

<activity
   android:screenOrientation="portrait"
   android:configChanges="orientation|keyboardHidden">
</activity>

これはマニフェスト ファイルに適用されますAndroidManifest.xml

おすすめ記事