2016-07-04 1 views
2

このトピックに関する多くの質問と回答がありましたが、開発者のガイドラインを読んだことがありますが、これらのすべてをカバーするベストプラクティスは何ですか?私は人々がレイアウト - 小さなレイアウト - 通常のレイアウト - 大きなレイアウト - xlargeを使用することで、大部分のデバイスをカバーするのに十分だろうと言いました。私は、他の人が推奨していないものとして使用しないと言っているのを見て、代わりにlayout-sw380dp layout-sw480dpなどの最小の幅のレイアウトを使用するべきです。このすべてのことを念頭に置いて私は自己混合レイアウトを見つけて、それが混乱するのは正直なところです!例えば、この絵を見てみましょう、私は多くのレイアウトを持っているすべてのアンドロイドデバイスをカバーするために実際に必要なレイアウトリソースフォルダの数

enter image description here

は、私は本当にこれらのすべてが必要なのですか?経験豊富なアンドロイドのデベロッパーには、膨大な範囲のデバイスをターゲットにするためにレイアウトリソースフォルダはどれくらい多く、何種類あるのでしょうか?

+1

"本当にこれらのすべてが必要ですか?" - おそらくそうではありません。どのくらいレイアウトリソースフォルダを使って、広範囲のデバイスをターゲットにしていますか?それはアプリのUIに完全に依存するため、抽象的に答えられません。あなたの 'minSdkVersion'が14以上であれば、指定されたサイズ(例えば' res/layout-large/')をスキップして数字のもの(例えば' res/layout-sw600dp/')にスティックすることができます。古い「minSdkVersion」を使用していても、Android 2.xのタブレットがほとんどなく、Android 3.xは長年に渡って関連性がないため、おそらくそれらをスキップすることができます。 – CommonsWare

+0

私の最小sdkは通常14で、私はレイアウトが大きいと思っていましたが、レイアウトは古い3.2タブレット用です。 nexus 9とnexus 10のようなデバイスがありますが、レイアウトsw620dpとレイアウトsw700dpはそれぞれ –

+0

をカバーしなければならないことがわかりました。 "レイアウトは古い3.2タブレット用です。" - あなたの 'minSdkVersion'は高いですとにかくAndroid 3.2の13よりも。レイアウト - sw620dpとレイアウト - sw700dpはそれぞれこれらをカバーする必要があることがわかりました - しかし、レイアウトがはっきりと異なる場合は、これらのディレクトリが必要です。 Web開発者は、可能なブラウザビューポートサイズごとに異なるバージョンのWebサイトを作成しません。代わりに専用のモバイルサイトを持ち、残りの部分をCSSルールで処理することもできます。同じことがAndroidの開発でも当てはまりますが、技術は異なります。 – CommonsWare

答えて

1

通常、「デフォルト」の構造では多くのデバイス用のアプリケーションを作成できるため、すべて自動生成されたディレクトリを保持します。より多くのグラフィカルな詳細を使用するアプリケーションを作成するには、スクリーンショットにある既に作成されたディレクトリをすべて使用する必要があります。

EDIT: デフォルトの構造=これはAndroid Studioの新しいプロジェクト用の自動生成ディレクトリです:)

+0

自動生成された構造は、これがただレイアウトと呼ばれる1つのフォルダです!私はそれがそこにある画面のサイズの量をカバーするのに十分だとは思わない。 –

関連する問題