如何将可绘制的矢量调整为设备字体大小
How to resize vector drawable to device font size
是否可以将矢量可绘制对象设置为根据设备设置的字体大小自动调整自身大小?每当我在“设置”菜单中更改字体大小时,矢量可绘制对象似乎永远不会适应它的大小并且始终保持不变,但文本却不会失败。
可绘制
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:height="48dp" android:width="48dp" android:viewportHeight="24" android:viewportWidth="24">
<path android:fillColor="#FFFFFF" android:pathData="M7.41,7.84L12,12.42l4.59,-4.58L18,9.25l-6,6 -6,-6z"/>
</vector>
小字体
正常字号
大字体
超大字体
您可以在矢量可绘制对象的定义中使用 sp
单位。 sp
单元的全部意义在于,当字号正常时1sp
== 1dp
,但字号时1sp
大于1dp
被放大了。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<vector
xmlns:android="http://schemas.android.com/apk/res/android"
android:height="48sp" <!-- use sp here instead of dp -->
android:width="48sp" <!-- use sp here instead of dp -->
android:viewportHeight="24"
android:viewportWidth="24">
<path
android:fillColor="#FFFFFF"
android:pathData="M7.41,7.84L12,12.42l4.59,-4.58L18,9.25l-6,6 -6,-6z"/>
</vector>
- 如上一个答案使用 sp 而不是 dp ,
- sp更适合文字
- dp更适合图片
是否可以将矢量可绘制对象设置为根据设备设置的字体大小自动调整自身大小?每当我在“设置”菜单中更改字体大小时,矢量可绘制对象似乎永远不会适应它的大小并且始终保持不变,但文本却不会失败。
可绘制
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:height="48dp" android:width="48dp" android:viewportHeight="24" android:viewportWidth="24">
<path android:fillColor="#FFFFFF" android:pathData="M7.41,7.84L12,12.42l4.59,-4.58L18,9.25l-6,6 -6,-6z"/>
</vector>
小字体
正常字号
大字体
超大字体
您可以在矢量可绘制对象的定义中使用 sp
单位。 sp
单元的全部意义在于,当字号正常时1sp
== 1dp
,但字号时1sp
大于1dp
被放大了。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<vector
xmlns:android="http://schemas.android.com/apk/res/android"
android:height="48sp" <!-- use sp here instead of dp -->
android:width="48sp" <!-- use sp here instead of dp -->
android:viewportHeight="24"
android:viewportWidth="24">
<path
android:fillColor="#FFFFFF"
android:pathData="M7.41,7.84L12,12.42l4.59,-4.58L18,9.25l-6,6 -6,-6z"/>
</vector>
- 如上一个答案使用 sp 而不是 dp ,
- sp更适合文字
- dp更适合图片