ベクタードローアブルスケーリングが期待どおりにならないのはなぜですか?
Androidアプリでベクタードローアブルを使用しようとしています。http://developer.android.com/training/material/drawables.htmlから(鉱山を強調): Android 5.0(APIレベル21)以上では、定義を失うことなくスケーリングできるベクタードローアブルを定義できます。 このドロアブルを使用する: <vector xmlns:android="http://schemas.android.com/apk/res/android" android:height="24dp" android:width="24dp" android:viewportWidth="24" android:viewportHeight="24"> <path android:fillColor="@color/colorPrimary" android:pathData="M14,20A2,2 0 0,1 12,22A2,2 0 0,1 10,20H14M12,2A1,1 0 0,1 13,3V4.08C15.84,4.56 18,7.03 18,10V16L21,19H3L6,16V10C6,7.03 8.16,4.56 11,4.08V3A1,1 0 0,1 12,2Z" /> そしてこのImageView: <ImageView android:layout_width="400dp" android:layout_height="400dp" android:src="@drawable/icon_bell"/> アイコンを400 dpで表示しようとすると、次のぼやけた画像が生成されます(lollipopを実行している2015年頃の高解像度モバイルデバイス上): ベクタードローアブルの定義で幅と高さを200dpに変更すると、400dpのレンダリングサイズでの状況が大幅に改善されます。ただし、これをTextView要素のドローアブルとして設定すると(つまり、テキストの左側にあるアイコン)、巨大なアイコンが作成されます。 私の質問: 1)ベクタードローアブルに幅/高さの仕様があるのはなぜですか?これらの全体のポイントは、ロスレスにスケールアップおよびスケールダウンして、その定義で幅と高さを無意味にすることだと思いましたか? 2)TextViewで24 dpのドローアブルとして機能する単一のベクタードローアブルを使用することはできますか。たとえば、さまざまなサイズの複数のベクタードローアブルを作成せずに、レンダリングされた要件に合わせてスケーリングする方法を使用するにはどうすればよいですか? 3)幅/高さの属性を効果的に使用するにはどうすればよいですか?viewportWidth / Heightとの違いは何ですか? さらなる詳細: デバイスはAPI 22を実行しています Android Studio …