アプリ内でカメラを使用しようとしましたが、構成変更の適切な処理に問題があります。Activity
典型的な(onSaveInstanceState など)構成の変更を処理する適切な方法は知っていますが、ここではそうではありません。
私のアクティビティは、オーバーレイ シャッター ボタンと画像のトリミングに使用されるフレームを備えたフルスクリーン カメラ プレビューと考えてください。
私が達成しようとしていること(ストック HTC Sense カメラのプレビュー): http://youtu.be/uzfUJUNHY68
つまり、オンになっているカメラ プレビューはTextureView
回転時に再作成されるべきではありませんが、要素を配置するために、アクティビティは向きを認識している必要があります。
Activity
ローテーションで を再作成したくないと確信しています。android:configChanges
ということでアプローチしてみました。問題は、onSurfaceTextureSizeChanged()
まだ呼び出され、カメラのプレビューが回転し、エクスペリエンス全体がスムーズではないことです (プレビューが少し遅れて「再作成」されるか、何かが発生します)。
を介してアクティビティを横向きにロックしようとしましandroid:screenOrientation="landscape"
たが、この方法onConfigurationChanged()
は呼び出されず、上のビデオのように他のビューを配置する方法がわかりません。いくつかのアクセラレータ イベントをリッスンできると思いますが、もっと良い方法があると確信しています。ある?