私の質問はまっすぐでシンプルです。任意のアンドロイドデバイスでカメラアプリを開きます。ポートレートモード(デフォルト90度)には、Flash、Image Capture、Accessing Galleryなどのカメラ機能のボタンで構成される下部フレームがあります。デバイスを任意の方向(180度または0度)で回転させ、下部バーは、デバイスのメニューボタンの位置のすぐ横のウィンドウスペースに留まります。その機能はどのように達成されていますか?デバイスの向きが変化するようにフレームの特定の場所にフレームを固定することにより、デバイスの座標系(ビュー/ウィンドウ全体の各フレームのXとY値の変更)を再構成することは、フレームを再描画する際に影響を与えません。レイアウトXMLファイルに属性を指定することで、これを簡単に達成できますか?それとも複雑なコードをプログラミングする必要がありますか?プログラミングが唯一の選択肢ならば、私はそれをできるだけ単純化しておきたいと考えています。アンドロイドのビューでレイアウトを固定する
ありがとうございました。
私は公式のCamera.apkソースコードを探していました。そこからいくつかのソリューションを見た。デフォルトの公式アプリがかなり複雑な設定でOpen GL APIを使って実際にたくさんのGraphicsパッケージコードを使用しているようです。私が持っているタイムラインでは、RelativeLayoutのlayout_align *アトリビュートを使用したり、オリエンテーションの変更を処理したり、onConfigurationChangedメソッドで新しいレイアウトパラメータを渡したりすることもあります。私が望むものを達成するのに成功した場合、数日後に投稿されます。 – AndroidRocks
アクティビティのコンテンツビュー全体をデバイスウィンドウにロック/フリーズ/修正/アンカーする方法があります。これにより、方向変更によってアクティビティでビューがまったく再描画されません。私はトラフィックジャム(ゲームアプリ)は、モトローラXoomのタブレットでそれを行います知っている。それは私のために完全に動作します。 – AndroidRocks
明らかに、アクティビティのウィンドウを固定するのは簡単です。 android:screenOrientationはそれを正確に行います。右下の私の鼻と私はデヴァイガードを調べることを心配したことはありません。 – AndroidRocks