0

ビットマップ ファイルと一致するサイズの描画 xml を作成しようとしています。私はあらゆる種類の奇妙な結果を得ています。私の図面ファイルの名前は次のrr.xmlとおりです。

<?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
    <solid android:color="#ff0000"/>
    <corners android:radius="4px" />
    <size android:height="64px" android:width="64px"/>
</shape>

私が比較しているビットマップは、64px x 64px のビットマップです。

三つの旗

レイアウト ファイルは次のようになります。

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:orientation="horizontal"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content">

<ImageView

        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/btnList"
        android:src="@drawable/three_flags_route"
        android:layout_gravity="center"
        />

<ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/btnStatus"
        android:src="@drawable/rr"
        android:layout_gravity="center"
        android:scaleType="center"
        />

</LinearLayout>

赤い四角がフラグ付きのアイコンと同じサイズになることを期待しています。代わりに、これを取得します(エミュレーターのスクリーンショットから切り取ったもの):

スクリーンショット

約1.5倍の大きさです!それらを一致させるためにxmlでディメンションを指定する方法はありますか?

4

1 に答える 1

0

ドキュメントから:

注: 既定では、形状は、ここで定義された寸法に比例するコンテナー ビューのサイズにスケーリングされます。ImageView でシェイプを使用する場合、android:scaleType を「center」に設定することでスケーリングを制限できます。

于 2013-08-03T20:51:51.307 に答える