私は Android アプリケーションを開発しており、アクティビティの背景として画像を使用したいと考えています。API 8から最新までを対象としています。これを行うための最良の方法は何かを知りたいです。
Supporting Different Screen SizesとSupporting Multiple Screensを読みました。
そこで、各背景に対して 320x480、480x800、600x1024、800x1280 のサイズの 4 つの画像を作成しました。まず、ファイルをそれぞれこのフォルダーに入れます: drawable-sw320dp, drawable-sw480dp, drawable-sw600dp, drawable-sw720dp
. その後、これは Android 3.2 以降でのみ機能することに気付き、small、normal、large、および xlarge フォルダーを追加する必要がありました。ファイルが重複しないように、最初の記事のこのセクションのアイデアに従いました。
最終的な構造は次のとおりです。
- フォルダー内のすべての画像
drawable
。次元ごとに名前が異なります - 各フォルダー内の xml ファイル:
values-sw320dp, values-sw480dp, values-sw600dp, values-sw720dp, values-small, values-normal, values-large, values-xlarge
たとえば、私が持っている主な活動の背景については、次のとおりです。
drawable\bg_main_320.png
drawable\bg_main_480.png
drawable\bg_main_600.png
drawable\bg_main_720.png
- そして
drawables.xml
、上記の 8 つのフォルダー内。
およびフォルダの内容は次のとおりdrawables.xml
です。values-sw480dp
values-normal
<resources>
<item name="bg_main" type="drawable">@drawable/bg_main_480</item>
</resources>
これを Android 2.3.7 および 4.0.3 でテストしたところ、正常に動作しています。ただし、すべての画像に対して次の Lint 警告が表示されます。私はそれが何を意味するかを知っていますが、無意味なので、各 dp に対してこれ以上画像を作成し続けるつもりはありません。
私が使用している構造は正しいですか?何を指示してるんですか?