10

我在绘制路径时遇到了 Android Canvas 的一些问题。我的情况是我有一个相对的布局工作,比如地图视图(不使用谷歌 API 或类似的东西)。我必须在那个视图上画一条路径。

    canvas.drawPath(polyPath, borderPaint);

我还必须使用画布绘制其他类型,如圆形、多边形。每次我们放大或缩小时,我们都会重新计算路径点以匹配缩放级别。使用像android 2.3.3这样的旧api时,完全没有问题。但是对于像 android 4.x 这样的较新的 api,当我们放大时,有些点的位置超出了可见视图(例如 -300,-300 )。放大一段时间后,可见区域仅显示我路径的一小部分。然后突然整个路径消失了。如果我们缩小,它会再次出现。它就像画布停止渲染那些(其他对象仍然像图标一样显示)同样的事情去圆形,椭圆形或多边形。

所以我不确定画布的绘制方式是否有任何变化?关于使用画布绘图,我有什么遗漏吗?

4

1 回答 1

15

在视图的初始化中添加这一行

setLayerType(View.LAYER_TYPE_SOFTWARE, null);

另请参阅本指南以了解硬件级别支持的 API

谷歌API

图一

图B

于 2013-10-29T05:26:41.237 回答