2016-08-20 4 views
1

興味深い質問があります。SVGのレイヤーリストアイテムを設定する

<layer-list> 
     <item> 
      <shape android:shape="oval"> 
       <size android:width="@dimen/cb_shape_size" android:height="@dimen/cb_shape_size"/> 
       <solid android:color="@color/cb_unchecked_solid"/> 
       <stroke android:width="@dimen/cb_shape_stroke" 
         android:color="@color/cb_checked_stroke"/> 
      </shape> 
     </item> 
     <item android:drawable="@drawable/main_cb_gps_off" 
       android:gravity="center"/> 
    </layer-list> 

main_cb_gps_offは、SVGファイルです。 enter image description here をしかし、私は自分の携帯電話(Android4.4.2)でプロジェクトを実行するとビューはこれを好き: プレビューは、Android Studioでこれを好き enter image description here をそして、私はAndroid6.0の電話でプロジェクトを実行し、ビューAndroid Studioのプレビューと同じです。このコードはAndroid4.4.2で実行、SVGファイルのサイズが正常である

<layer-list> 
      <item android:drawable="@drawable/main_cb_gps_off" 
        android:gravity="center"/> 
     </layer-list> 

: はその後、同時に、私がことがわかりました。 "レイヤーリスト"に2つのアイテムがある場合、なぜsvgファイルのシエズが大きくなるのか分かりません。私は知りたいです。どんな解決策ですか?

+0

'main_cb_gps_offは、SVGのfile'であると<FrameLayout>二つの別々のImageViewのを使用し、その代わりに、私はmain_cb_gps_offがVectorDrawableだと思います。それらは交換できません。 VectorDrawablesは、SVG構造の**限定サブセット**を使用します。そして基礎となるXMLは異なっています。 –

+0

はありますか? – DNwalter

答えて

0

SVG xmlファイル内でサイズを設定できます。幅と高さのサイズが100dpであると宣言すると、レイヤーリストはそのアイコンを描画する値を使用します。

サイズを増減する必要がある場合は、xmlファイル内で行います。

0

私は同じ問題を抱えていたと私はandroid:layout_gravity="center"

関連する問題