Androidで横向きモードを使用しているときに問題が発生しました.Androidで縦向きから横向きモードに変更する画像位置の変更を回避する方法. 私を助けてください
2 に答える
画像を表示しているアクティビティで、そのアクティビティをAndroidマニフェストファイルに次のように登録します。
<activity
android:name="com.android.YourActivity"
android:screenOrientation="portrait">
</activity>
このようにして、アクティビティはポートレートモードのみにとどまります。
向きが変わると、実行中のアクティビティが再起動します。再起動の動作は、新しいデバイス構成に一致する代替リソースでアプリケーションを自動的に再読み込みすることで、アプリケーションが新しい構成に適応できるように設計されています。したがって、リソース集約的です。
アプリの動作方法とデバイスのパフォーマンスに応じて、次の方法で向きの変更 (構成全体の変更) を処理できます。
固定の向き:アプリの向きを横向きまたは縦向きに固定する場合。このためには、この属性をマニフェスト ファイルのアクティビティ タグの下に設定する必要があります。
android:screenOrientation="portrait" or android:screenOrientation="landscape"
自分で構成変更を処理する: アプリケーションが特定の構成変更中にリソースを更新する必要がなく、アクティビティの再起動を回避する必要があるパフォーマンス制限がある場合は、オリエンテーションの変更を自分で処理できます。その後、アクティビティを宣言できます。構成の変更自体を処理するため、システムがアクティビティを再開するのを防ぎます。
このためには、マニフェスト ファイルでこれを宣言する必要があります。<activity android:name=".MyActivity" android:configChanges="orientation|keyboardHidden" android:label="@string/app_name"/>
アクティビティの onConfigurationChanged() メソッドをオーバーライドする必要があります。
** すべては自分で処理する必要があるため、これは最後の手段として使用してください。デフォルトの動作: リソース フォルダーから代替リソースを選択して、Android に構成の変更を処理させることができます。これらの代替リソースを横向きおよび縦向きモードに提供するだけで済みます。