首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在使用svg-android时,我只能获得空白的白屏幕。

在使用svg-android时,我只能获得空白的白屏幕。
EN

Stack Overflow用户
提问于 2013-01-12 19:58:49
回答 2查看 3.5K关注 0票数 9

用途:我想用ImageView来显示一个SVG图像文件。

尝试1:

  • 我正在使用svg-android库来完成这个任务。
  • 我正在逐字逐句地跟踪他们的教程。我只是复制粘贴他们的代码到我的onCreate,评论我的应用程序代码从onCreate。 我有一个飞溅的屏幕在这之前,但我怀疑这会干扰这件事。在任何情况下,我只是改变发射意图,并发布一个更新。
  • 我已经将他们的jar添加到libs文件夹中并引用了它。

结果1:

我正在三星星系I93000 (国际版)上进行测试 我只得到了一个白色的屏幕。 没有编译或运行时错误。

Logcat输出如下:

01:22:11.755: D/dalvikvm(24889):GC_FOR_ALLOC释放52K,7%空闲12198 K/12995K,暂停17 1K,总计17ms01-13 01:22:11.765: i/dalvikvm-堆(24889):4642816字节分配01-1301:22:11.810: D/dalvikvm(24889):GC_CONCURRENT释放1K,5%免费16730K/17543K,暂停15ms+2ms,总计43 to 01-13 01:22:12.080: D/dalvikvm(24889):释放GC_FOR_ALLOC <1K,5%空闲16731K/17543K,暂停13 to,总计13ms 01-1301:22:12.100:i/dalvikvm-堆(24889):5168972字节分配01-1301:22:12.125: D/dalvikvm(24889):GC_CONCURRENT释放21779K/22599K,暂停12ms+2ms,总计25 22 01-13 01:22:12.560: D/libEGL(24889):loaded /system/lib/egl/libEGL_mali.so 01-13 01:22:12.595: D/libEGL(24889):loaded /system/lib/egl/libGLESv1_CM_mali.so 01-13 01:22:12.600: D/libEGL(24889):loaded /system/lib/egl/libGLESv2_mali.so 01-13 01:22:12.605: D/(24889):设备驱动程序匹配01- API13 01:22:12.605: D/(24889):设备驱动程序API版本: 10 01-13 01:22:12.605: D/(24889):用户空间API版本: 10 01-13 01:22:12.605: d(24889):马里:修订=Linux-r2p4-02rel0 BUILD_DATE=Tue 10月16日15:37:13 KST 2012 01-13 01:22:12.670: D/OpenGLRenderer(24889):启用调试模式0

更新1:

我尝试过将SVG图形显示为清单中的主要活动的活动。结果没有变化。

更新2:

尝试另一个库/方法来做到这一点- 支持SVG的ImageView。会把结果发回来。

更新3:

你要知道,我已经看过基于Android的SVG支持了。那里的答案并没有真正提供一个本地的解决方案。解决方法之一是创建静态html页面,每个svg对应一个页面,引用SVG库。这一点似乎根本无法维护。当人们看到遗留代码时,我会诅咒他们。

正如你可能已经猜到的,上面的试验结果不是很好。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-10 17:00:05

您可能已经找到了解决方案,但为了将来的参考:

我正在三星星系I93000 (国际版)上进行测试 我只得到了一个白色的屏幕。 没有编译或运行时错误。

您可能需要禁用正在使用的ImageView的硬件加速:

代码语言:javascript
复制
imageView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

我对svg的分叉也有同样的问题,这完全是因为硬件加速。

票数 18
EN

Stack Overflow用户

发布于 2013-01-13 01:19:40

好吧,经过一个彻彻底底的不眠之夜,这就是我所拥有的。:)

希望1:

*TPSVG* (,这是我所用的,也就是我的认可邮票 ;)

试过这个被祝福的人的图书馆。很有魅力。他从view扩展了他的自定义视图,这样您就有了布局的大部分基本参数。它只有一个贡献者。我有点不喜欢把它用在生产上,至少从长期来看是这样。但对他的工作和许多感谢,因为它满足了我的迫切需要。

这个词的用法非常直接,不管我怎么粗略地描述它。

  • 下载回购作为一个压缩,并将它导入到eclipse
  • 将其作为库项目添加到项目中( Properties -> Android)
  • 在onCreate中使用它: svgView SVGView= (SVGView)this.findViewById(R.id.svgImage);SVGParserRenderer image = new SVGParserRenderer(this,R.raw.anime);svgView.setSVGRenderer(图像,null);svgView.setBackgroundColor(Color.WHITE);
  • 我用了一个FrameLayout来定位这个。需要进行大量的尝试和错误,因为android的WYSIWYG编辑器中没有显示这一点。您可以暂时用ImageView替换它,并处理格式设置。
  • 此标记中使用的不属于View类的任何参数都将导致编译错误

问题:--我还没有弄清楚如何在运行时在这个视图上切换绘图(SVG)。如果有人知道这一点,请张贴程序。

希望2:

http://www.vectoroid.com/

这个看起来很有希望。除了图书馆,他们还有一些基于矢量的应用程序。我不太清楚如何使用它来加载SVG绘图(似乎还不支持这种方式)。但是,等等!这里在他们的博客上说,他们已经实现了"SVG“,并将很快发布。耶!

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14297372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档