【发布时间】:2015-12-22 09:43:07
【问题描述】:
我在 Android 中遇到了 VectorDrawable 的问题。 我有一个矢量可绘制文件 (.xml),我想在位图上绘制它。我设法加载此文件并将其绘制在位图上。我可以改变它的填充颜色,但问题是我不能改变它的笔触和颜色。
任何帮助将不胜感激!!!
谢谢!
这是可绘制文件:
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="312dp"
android:height="312dp"
android:viewportWidth="312.7"
android:viewportHeight="312.699">
<path
android:pathData="M306.35,266.34c0,22.09 -17.91,40.01 -40,40.01L46.35,306.35c-22.09,0 -40,-17.92 -40,-40.01v-219.99c0,-22.11 17.92,-40 40,-40h220c22.09,0 40,17.9 40,40L306.35,266.34z"
android:strokeWidth="5"
android:fillColor="@color/transparent"
android:strokeColor="#231F20"/></vector>
这是我加载并用蓝色填充形状的方式:
Drawable drawable = getResources().getDrawable(R.drawable.graph_rounded_rectangle);
drawable.setBounds(0, 0, width, height);
drawable.setColorFilter(new PorterDuffColorFilter(getResources().getColor(R.color.blue), PorterDuff.Mode.MULTIPLY));
drawable.draw(canvas);
【问题讨论】:
-
我刚试了一下,报错:java.lang.ClassCastException: android.graphics.drawable.VectorDrawable cannot be cast to android.graphics.drawable.GradientDrawable
-
哦,好吧,我的错……删除评论以避免其他人的错误答案。如果我对您的问题有任何其他答案,会通知您。谢谢
-
你知道怎么做吗?
-
您找到解决方案了吗?如果是,请分享。如何在
周围绘制边框?
标签: android android-vectordrawable