0

Androidで横向きモードを使用しているときに問題が発生しました.Androidで縦向きから横向きモードに変更する画像位置の変更を回避する方法. 私を助けてください

4

2 に答える 2

1

画像を表示しているアクティビティで、そのアクティビティをAndroidマニフェストファイルに次のように登録します。

<activity
     android:name="com.android.YourActivity"
     android:screenOrientation="portrait">
</activity>

このようにして、アクティビティはポートレートモードのみにとどまります。

于 2012-08-28T06:44:00.297 に答える
1

向きが変わると、実行中のアクティビティが再起動します。再起動の動作は、新しいデバイス構成に一致する代替リソースでアプリケーションを自動的に再読み込みすることで、アプリケーションが新しい構成に適応できるように設計されています。したがって、リソース集約的です。
アプリの動作方法とデバイスのパフォーマンスに応じて、次の方法で向きの変更 (構成全体の変更) を処理できます。

  • 固定の向き:アプリの向きを横向きまたは縦向きに固定する場合。このためには、この属性をマニフェスト ファイルのアクティビティ タグの下に設定する必要があります。

       android:screenOrientation="portrait"
       or
       android:screenOrientation="landscape"
    
  • 自分で構成変更を処理する: アプリケーションが特定の構成変更中にリソースを更新する必要がなく、アクティビティの再起動を回避する必要があるパフォーマンス制限がある場合は、オリエンテーションの変更を自分で処理できます。その後、アクティビティを宣言できます。構成の変更自体を処理するため、システムがアクティビティを再開するのを防ぎます。
    このためには、マニフェスト ファイルでこれを宣言する必要があります。

    <activity android:name=".MyActivity"
          android:configChanges="orientation|keyboardHidden"
          android:label="@string/app_name"/>
    

    アクティビティの onConfigurationChanged() メソッドをオーバーライドする必要があります。
    ** すべては自分で処理する必要があるため、これは最後の手段として使用してください。

  • デフォルトの動作: リソース フォルダーから代替リソースを選択して、Android に構成の変更を処理させることができます。これらの代替リソースを横向きおよび縦向きモードに提供するだけで済みます。

于 2012-08-28T07:20:20.150 に答える