是否有任何矢量绘图应用程序可以为iOS和Android生成本机代码?我需要一个用于制作iOS和Android的UI控件和按钮的工具(Xamarin)。我可以使用PaintCode为iOS创建出色的动态对象,但是对于Android版本,我必须使用其他工具重新创建它,因此我基本上要做两次所有事情。我希望找到一种方法来创建一些动态控件/按钮,这些控件/按钮可以在Xamarin iOS和Xamarin Android中使用。
一种许多组织(包括我的)处理跨平台设计的常见方法是使用图标字体。其工作原理是:创建您的图标/设计的SVG版本使用SVG /向量图标作为Unicode字符创建自定义字体优点:它适用于许多平台,包括Android、iOS、Windows Phone以及Web。图标为矢量图形,因此可缩放。缺点:图标不能有渐变。图标不能有多种颜色(可以通过将图标组合成多个SVG组件并在代码中分层来解决)。
我有一个小项目,可能可以解决你的问题: https://github.com/almosr/android-svg-code-render 这是一个将SVG文件转换为Android绘图指令并将其保存为Java源文件的工具。然后,您可以简单地调用此源文件中的方法,并使用Canvas参数直接绘制SVG内容到Canvas上。与在运行时使用SVG文件作为输入相比,它的速度要快得多,因为它不需要解析SVG文件(它在内部是XML)。同时也占用更少的内存。但是,它还存在一些限制和缺点,所以它可能适合您的需求,也可能不适合。尤其是交互不能映射到输出中(目前还不支持)。