我在我的应用中关注:
// Config
defaultConfig {
vectorDrawables.useSupportLibrary = true
}
// Activity
public abstract class BaseActivity<T extends ViewDataBinding> extends AppCompatActivity {
static {
AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);
}
}
// XML; Location: res/drawable
<Button
android:id="@+id/btAdd"
android:onClick="onClick"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:drawableLeft="@drawable/ic_add_black_24dp"
android:padding="8dp"
android:text="@string/add"
android:textColor="@color/md_black_1000"
app:backgroundTint="@color/md_white_1000"/>
我仍然在运行android API的设备上遇到异常&lt; 21:
Caused by: android.content.res.Resources$NotFoundException: File res/drawable/ic_add_black_24dp.xml from drawable resource ID #0x7f070070
这是一个矢量drawable。我认为上面两个语句会产生影响,矢量drawables被转换为运行android API的设备的pngs&lt; 21。
我的所作所为:
vectorDrawables.useSupportLibrary
AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);
res/drawables-any
但res/drawables
app:srcCompat
代替ImageViews
=&gt;与我的问题无关,因为我正在使用app:src
我还缺少什么?