6

私は Android アプリケーションを開発しており、アクティビティの背景として画像を使用したいと考えています。API 8から最新までを対象としています。これを行うための最良の方法は何かを知りたいです。

Supporting Different Screen SizesSupporting 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-sw480dpvalues-normal

<resources>
    <item name="bg_main" type="drawable">@drawable/bg_main_480</item> 
</resources>

これを Android 2.3.7 および 4.0.3 でテストしたところ、正常に動作しています。ただし、すべての画像に対して次の Lint 警告が表示されます。私はそれが何を意味するかを知っていますが、無意味なので、各 dp に対してこれ以上画像を作成し続けるつもりはありません。

私が使用している構造は正しいですか?何を指示してるんですか?

4

2 に答える 2

16

/res/drawable画像ファイルを含めることはできません。XML を使用して定義されたドローアブルのみを含める必要があります。ターゲットのピクセル密度に基づいて、実際の画像ファイルを適切なドローアブル ディレクトリに配置する必要があります。修飾子を指定したくない場合は、それらを /res/drawable-nodpi

于 2013-02-11T15:42:48.897 に答える
0

ここで貴重な情報を見つけることができますinfo

また、「res」forlderでは、さまざまなドローアブルを見ることができます:低密度の場合は36x36

中密度の場合は 48x48

高密度の場合は 72x72

超高密度の場合は 96x96

特定の解像度でファイルを配置できます。

于 2013-02-11T15:47:34.207 に答える