2012-01-18 9 views
8

の互換性と異なる画面サイズ(タブレットやスマートフォン)とバージョン2.3,3.2、および4.0のAndroidアプリをプログラミングする必要があります。 私は、res/layout-sw600dp /のようなレイアウトのフォルダの名前を知ることができると知っています。異なる画面サイズにレイアウトを正確に一致させることができます。アンドロイドのさまざまなバージョンの異なるレイアウトをプログラムする

だから、私は錠/スマートフォンのために完全に異なるレイアウトを使用する原因、私はAndroidのバージョンが使用されているテスト「ロード画面」、で開始すると、タブレットやスマートフォン・デバイスが使用されている場合たとえば、Tabletのレイアウトでは、スマートフォンには表示されないボタンがいくつかの画面に表示されます。

だから私はこのように、パッケージ内のすべてのこれを分離する必要があります:

  • 共通
  • 2.3
    • タブレット
    • スマートフォン
  • 3.2
    • タブレット
    • スマートフォン
  • 4.0
    • タブレット
    • スマートフォン

それは私の意見では、最良の方法だ原因私はのために準備するために、この分離を選ぶだろう今後 * 更新 *、もしそうだとしましょうAndroid 4.0のツールバーにボタンを追加する必要があります。

この分割はあなたの意見では良いことですか、これはの完全なオーバーロードですか?

4.0には、私が知っておくべき他の新機能がありますか?

答えて

15

場合は、中にあなたのレイアウトを設定することができます - それは実際にあなたの特定の要件に依存します。この問題の一般的なアプローチはフォールバックメカニズムです。いくつかの特定のレイアウト(xlarge landscape v11レイアウトなど)といくつかの一般的なレイアウトを用意します。

もちろん、これは「理想的」な解決策です。それは必ずしもそのようには機能しません。言い換えれば、代替リソースを提供するだけで、多くのバージョンのAndroidと互換性のあるアプリを実際に実装することは難しいです。互換性ライブラリを使用しても(バージョン固有のコードを少し減らすのに役立ちます)。実行時にバージョンに基づいてコードを修正する必要があります。

6

AndroidバージョンはBuild.VERSIONをご覧ください。

ドキュメントでは、Build.VERSION_CDKESの値に対してBuild.VERSION.SDK_INTをチェックすることをお勧めします。

そして、そのバージョンに基づいて、あなたはまた、分離に関するご質問については、バージョン番号(/res/layout-v11など)または(/res/values-v13

を示すために、あなたのリソースフォルダに名前を付けることができ、他の条件

+0

ありがとうございました! – 10ff

関連する問題