我正在绘制带有预定义路径的地图。地图可以移动,可以放大和缩小。这在我的 Android 4.0.4 上放大时效果很好,快速流畅,看起来不错。
由于我得到了 4.1.2 的更新,一切都不同了:当放大形状时,现在会变得像素化(不清晰,如附图中所示)并且移动地图非常抖动。我没有更改代码。
令人惊讶的是,在模拟器 (AVG) 中它在缩放时看起来也不错(见下面的截图)
我所做的是: - 我在大约 x=0-2000 和 y=0-1500 的区域中有很多路径 - 我只绘制在我的屏幕尺寸之间可见的路径 - 缩放我用 canvas.scale(x ,x) 在我的自定义视图的 onDraw() 方法中 - 移动地图是由我的自定义视图的 onDraw() 方法中的 canvas.translate(x,y) 完成的
我尝试了什么:
我试图用缩放而不是使用 canvas.scale() 来转换所有路径 -> 这会起作用,但我的形状变大了,所以无法绘制:“形状路径太大而无法渲染成纹理”
用大坐标重新创建路径。同样的问题,而且速度很慢->“形状路径太大而无法渲染为纹理”
将形状分成几个形状不是解决方案,因为它之前已经在我的 4.0.4 上工作过,而且我也喜欢正确绘制边框。(例如海岸线)
模拟器