Articles of android vectordrawable

在API <21更新build.gradle后,停止使用向量绘图工作项目

我有工作项目。 minSdkVersion 17 com.android.tools.build:gradle:2.3.3 gradle 4.1 Android Studio 3 Canary 6 我在我的gradle文件中: defaultConfig { vectorDrawables.useSupportLibrary = true vectorDrawables.generatedDensities = [] } 我也打电话给: AppCompatDelegate.setCompatVectorFromResourcesEnabled(true) 应用程序完美运作 现在转到: com.android.tools.build:gradle:3.0.0-alpha6 添加到存储库google()行 执行gradle clean assembleDebug 。 应用程序继续在API> 20的设备上工作。但对于API <21(谷歌Android模拟器)崩溃启动应用程序。 我看到在logcat错误: Resources$NotFoundException: Resource ID #0x7f080058 (0x7f080058是可绘制的abc_vector_test)。 为什么? UPD 2017-07-19 :它被修复并发布在com.android.tools.build:gradle:3.0.0-alpha7

Google Play:您需要检查APK内的图标,因为它无效

在Google Play开发者控制台中上传APK文件时出现以下错误: 上传失败 您需要检查APK内的图标,因为它无效。 所有我find的答案似乎表明,你必须将vector可绘制图标转换为PNG来摆脱这个错误。 为什么这是必要的? Vector Drawables的全部不是手动生成PNG吗? 编辑: 将我的应用程序图标转换为PNG实际上有帮助。 但我仍然不明白为什么这是必要的。 Android Studio是否应该在构build时生成PNG?

Android Vector Vector Drawable <defs>不支持。 如何解决它?

| 尝试从AndroidStudio 2.2,Ubuntu 14.04的本地svg文件生成vector素材时出现此错误 Could not generate a preview In icon.svg ERROR@ line 6 <defs> is not supported ERROR@ line 25 <use> is not supported 这是svg图标 我谷歌,发现发生,因为AndroidStudio不支持<defs> , <use> … 但我不知道如何解决它? 我可以将<defs>更改为AndroidStudio支持的另一个标签吗? 或者我永远不能从这个SVG文件生成vector素材? 任何帮助或build议将不胜感激。

Android vectorDrawables.useSupportLibrary = true正在停止应用程序

如果我在gradle中使用vectorDrawables.useSupportLibrary = true ,那么不幸的是运行它的应用程序停止。 如果我删除vectorDrawables.useSupportLibrary = true该应用程序的作品。 我的gradle: apply plugin: 'com.android.application' android { compileSdkVersion 25 buildToolsVersion "25.0.2" defaultConfig { vectorDrawables.useSupportLibrary = true applicationId "com.helikanon.firstapp" minSdkVersion 15 targetSdkVersion 25 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', […]

将VectorDrawable转换为SVG

我已经做了相反的转换(SVG到VectorDrawable )手动或使用networking工具。 但是,我正艰难地做相反的事情。 我有VectorDrawable但我不知道如何将其转换为SVG,我可以find零的在线工具来做到这一点。 有没有人有这方面的经验,有什么步骤或工具来做到这一点?

Android:获取资源$ NotFoundException为abc_ic_ab_back_material

我在旧的(pre-L)设备上获得Resources $ notfoundexception。 我在下面包括完整的堆栈跟踪。 我的支持库的版本是最新的(24.1.0),我已经包含在我的gradle文件中: vectorDrawables.useSupportLibrary = true 我的基本主题是一个noactionbar主题 – “Theme.AppCompat.Light.NoActionBar” 崩溃发生在我的代码中的这一行,我参考支持工具栏中的后退箭头,以便稍后改变它的颜色: @SuppressLint("PrivateResource") final Drawable upArrow = ContextCompat.getDrawable(this, R.drawable.abc_ic_ab_back_material); 这可能是什么原因? 此代码适用于L或以上的所有用户。 07-19 22:36:57.029 9330-9330/mypkg E/AndroidRuntime: FATAL EXCEPTION: main java.lang.RuntimeException: Unable to resume activity {mypkg/mypkg.activites.myActivity}: android.content.res.Resources$NotFoundException: File res/drawable/abc_ic_ab_back_material.xml from drawable resource ID #0x7f020013 at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2619) at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2647) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2104) at android.app.ActivityThread.access$600(ActivityThread.java:138) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205) at android.os.Handler.dispatchMessage(Handler.java:99) at […]

支持库中的AnimatedVectorDrawable和“pathData”

我正在使用支持库23.2.0的 animationvector ,如下所示: compile 'com.android.support:support-vector-drawable:23.2.0' compile 'com.android.support:animated-vector-drawable:23.2.0' 我正在尝试animation“ pathData ”(将线条变形到另一个)。 我的代码看起来像这样。 绘制/ ic_done.xml: <?xml version="1.0" encoding="utf-8"?> <vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="24dp" android:height="24dp" android:viewportHeight="24.0" android:viewportWidth="24.0"> <path android:name="tick" android:pathData="M4.8,12L9,16.2L20,8" android:strokeColor="#FF000000" /> </vector> 绘制/ ic_done_animated.xml: <?xml version="1.0" encoding="utf-8"?> <animated-vector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:drawable="@drawable/ic_done"> <target android:name="tick" android:animation="@animator/tick_path_animation" /> </animated-vector> animation师/ tick_path_animation.xml: <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:ordering="sequentially"> <objectAnimator android:duration="200" android:propertyName="pathData" android:valueFrom="M4.8,12L4.8,12L4.8,12" android:valueTo="M4.8,12L9,16.2L9,16.2" […]

精确控制Android Vector Vectoranimation

更新:find解决scheme! 向下滚动我的接受答案! 我想为一个图像的多个元素设置animation,并将animation链接到ViewPage的位置(所以根据当前正在拖动的页面,多个元素正在变形或飞入/飞出)。 那么,有没有办法精确控制animation的当前帧? 例如,让我们假设我有这个集合: <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <objectAnimator android:interpolator="@android:anim/decelerate_interpolator" android:duration="800" android:propertyName="scaleY" android:valueFrom="0" android:valueTo="1" /> <objectAnimator android:interpolator="@android:anim/decelerate_interpolator" android:duration="800" android:propertyName="scaleX" android:valueFrom="0" android:valueTo="1" /> <objectAnimator android:interpolator="@android:anim/decelerate_interpolator" android:duration="800" android:propertyName="rotation" android:valueFrom="0" android:valueTo="360" /> </set> animationvector文件: <animated-vector xmlns:android="http://schemas.android.com/apk/res/android" android:drawable="@drawable/pre_signup_1" > <target android:name="plus_button" android:animation="@anim/pre_signup_1_plus_container" /> <target android:name="plus" android:animation="@anim/pre_signup_1_plus_sign" /> </animated-vector> 运行animation的Java代码: ImageView mImage1 = (ImageView) findViewById(R.id.image_1); AnimatedVectorDrawableCompat animated = […]

我怎样才能使用Android的工具栏VectorDrawable?

在工具栏中使用新的VectorDrawable的正确方法是什么? 我试图使用app:srcCompat元素,如下所示,但没有出现。 <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item app:srcCompat="@drawable/ic_clear" app:showAsAction="ifRoom" /> </menu> 我有我自己的工具栏布局使用JB(16)上的android.support.v7.widget.Toolbar和Android支持库v23.2。

与vectorstreplash全屏幕的splashscreen

我做了这个教程的启animation面,它工作得很好。 https://www.bignerdranch.com/blog/splash-screens-the-right-way/基本上我通过主题设置了一个splascreen: <style name="ThemeSplash" parent="Theme.AppCompat.NoActionBar"> <item name="android:windowBackground">@drawable/drawable_splashcreen</item> </style> 我想像这样在里面放置一个vector图像: (drawable_splashcreen) <item android:drawable="@color/color_background_splash_screen" /> <item android:drawable="@drawable/vector_najdiflet_logo" /> 图像将通过全屏幕延伸。 在API 23上,它的工作原理应该是这样。 但在较旧的设备上,它只是拉伸。 我尝试宽度,高度,甚至与视口混淆,但没有成功。 任何解决这个?