7

まず、グーグルグループでこのを参考にしたいと思います。

私の問題は、ランドスケープネイティブアプリをポートレートモードで動作させたいことです。アプリをポートレートモードにする方法はまったく問題ありませんが、アプリをポートレートモードで表示すると、問題が発生します。

バーコードスキャナーが動作を開始しているとき、そのカメラビューは(pr。デフォルト)+90度の角度です。アプリをポートレートモードで表示する場合、バーコードスキャナーは(当然のことながら)+90度の角度のままです。

参照されている問題ページには、問題を回避するためのハックが表示されていますが、これはほとんどのデバイスでは機能しないようです。これは、ターゲットデバイスでも機能しません。

回避策を講じている方や、ソース内で90度の反転を「元に戻す」ことができる場所を見つけた方がいらっしゃるかどうかをお聞きしたいと思います。

使用可能な答えが最大限に活用されます:D残念ながら、これが解決されるまでプロジェクトを進めることはできません。ポートレートモードで実行する必要があります;)

事前に...ありがとう:)

4

1 に答える 1

4

私はこれをプライベートビルドに実装しました。複雑で詳細はお伝えできません。重要な手順は次のとおりです。

  • 回転Camera.setDisplayOrientation()打ち消すために呼び出します。それに関するいくつかの議論については、Androidjavadocを参照してください
  • Camera.Parameters.setPreviewSize()それが正しく呼び出されていることを確認してください。プレビューサイズは横向きで報告されますが、縦向きに設定する必要があります
  • (そして、何を推測してください-電話のデフォルトの向きは縦向きと見なされますが、タブレットは横向きと見なされます!あなたもそれを考慮していることを確認してください。)
  • 最後に、プレビューデータは常に横向きモードです。あなたはそれを正しい向きで読むためにそれを自分で回転させる必要があります、さもなければそれを説明します。
于 2011-09-23T11:48:21.037 に答える