我曾尝试在svg-android中使用svg格式的图标,但不起作用。我已经从svg文件创建了一个可绘制的,并将其用于ImageView ImageResource,但图像是不可见的。那么我如何使用svg-android做到这一点呢?或者用一种不同的方式?
下面是一个exemple for icons that i want to use:
我想使用它与SVG格式,因为我想使用相同的图标与另一种颜色。
下面是我的XML文件:
<ImageView
android:id="@+id/home_desc_butt"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:layout_marginLeft="3dp"
/>这是我的onCreateView:
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.activity_campaign_details, container, false);
home_desc_butt = (ImageView) rootView.findViewById(R.id.home_desc_butt);
SVG svg = SVGParser.getSVGFromResource(rootView.getResources(), R.raw.icon_house_alt);
Drawable drawable = svg.createPictureDrawable();
home_desc_butt.setImageDrawable(drawable);
}发布于 2014-10-01 00:52:04
如果你真的需要为你的图标使用SVG,那么有一些库可能会有帮助:
谷歌有一个库AndroidSVG,你可以使用它:https://code.google.com/p/svg-android/wiki/Tutorial
然而,它会建议在photoshop中削减这些资产。
Svgs可能相当慢,在像素密度较高的设备上可能看起来不是很好。
发布于 2014-10-01 02:43:57
我找到了一个不使用svg-android库来给我的图标上色的替代方案:
ColorFilter filter = new LightingColorFilter( Color.RED, Color.RED);
home_desc_butt.setColorFilter(filter);这很好用。
https://stackoverflow.com/questions/26125618
复制相似问题