3

だから私はベクトルにした11の異なるドローアブルを持っています.ロリポップより後のバージョンにあるすべてのデバイスの画像としてそれらを使用しました.十分なメモリがありません。

ベクトルは画像よりも効率的だと思いました。

これが私のベクタードローアブルの例です:

<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="612dp"
    android:height="792dp"
    android:viewportWidth="612"
    android:viewportHeight="792">

<path
    android:fillColor="#C03A2B"
    android:pathData="M 306 90 C 474.999133448 90 612 227.000866552 612 396 C 612 564.999133448 474.999133448 702 306 702 C 137.000866552 702 0 564.999133448 0 396 C 0 227.000866552 137.000866552 90 306 90 Z" />
<path
    android:fillColor="#FFFFFF"
    android:pathData="M483.9,584.7L301.1,415.4c-10.9-10.2-15.5-23.7-9.7-29.5l5.6-5.6c5.9-5.9,19.5-1.3,29.5,9.7l169.5,182.6
    c2.2,2.4,1.8,6.3-0.7,9l-2.5,2.5C490.2,586.5,486.1,587,483.9,584.7z" />
</vector>

これらを、作成されたイメージビューのイメージ リソースとしてランダムに設定する gridView に表示しています。

4

1 に答える 1

4

これらのドローアブルのサイズが原因で問題が発生するようです。次を含むこのガイダンスを参照してください。

ベクター グラフィックの初期読み込みは、対応するラスター イメージよりも多くの CPU サイクルを消費する可能性があります。その後、メモリ使用量とパフォーマンスは 2 つの間で類似しています。ベクター画像を最大 200 x 200 dp に制限することをお勧めします。そうしないと、描画に時間がかかりすぎる可能性があります。

于 2016-01-27T13:24:59.423 に答える