猿问

如何在Android API下21中使用矢量可绘制对象?

我正在开发一个Android项目,因此选择<vector>显示图标,因为它具有适应性和动态性,但是我只能在运行Android且具有API 21或更高版本的设备上运行此应用程序。我的问题是如何<vector>在较低的Android版本(即API 14或更高版本)上使用。谢谢!


<!-- drawable/ic_android_debug_bridge.xmlxml -->

<vector xmlns:android="http://schemas.android.com/apk/res/android"

android:height="48dp"

android:width="48dp"

android:viewportWidth="24"

android:viewportHeight="24">

<path android:fillColor="@color/primaryColorDark"

    android:pathData="M15,9A1,1 0 0,1 14,8A1,1 0 0,1 15,7A1,1 0 0,1 16,8A1,1 `0 0,1 15,9M9,9A1,1 0 0,1 8,8A1,1 0 0,1 9,7A1,1 0 0,1 10,8A1,1 0 0,1 9,9M16.12,4.37L18.22,2.27L17.4,1.44L15.09,3.75C14.16,3.28 13.11,3 12,3C10.88,3 9.84,3.28 8.91,3.75L6.6,1.44L5.78,2.27L7.88,4.37C6.14,5.64 5,7.68 5,10V11H19V10C19,7.68 17.86,5.64 16.12,4.37M5,16C5,19.86 8.13,23 12,23A7,7 0 0,0 19,16V12H5V16Z" /></vector>`


德玛西亚99
浏览 427回答 3
3回答

明月笑刀无情

支持库支持Lollipop之前的VectorDrawable,但使用它们的方式取决于您所拥有的支持库的版本。而且它不一定在所有情况下都有效。我制作了此图来提供帮助(对于支持库23.4.0至-至少-25.1.0有效)。

长风秋雁

借助23.2支持库,一直到API v7一直对Vector Drawable提供真正的支持。建议通过添加以下内容来禁用该支持的先前版本:该支持在构建期间呈现PNG// Gradle Plugin 2.0+&nbsp;android {&nbsp; &nbsp;defaultConfig {&nbsp; &nbsp; &nbsp;vectorDrawables.useSupportLibrary = true&nbsp; &nbsp; }&nbsp;}到build.gradle文件。实现非常简单。Drawables中有一个新的srcCompat属性:<ImageView&nbsp; android:layout_width="wrap_content"&nbsp; android:layout_height="wrap_content"&nbsp; app:srcCompat="@drawable/ic_add" />&nbsp; &nbsp; <= this is new在诸如TextView的drawableLeft属性的情况下,也支持Vector Drawable 。但是,我仍然建议使用Iconics库,AndroidSVG或其他字体图标或SVG解决方案,以全面支持SVG标准。
随时随地看视频慕课网APP

相关分类

Java
Android
我要回答