我目前正在 Android 中实现一个 View ,该 View 涉及使用大于屏幕尺寸的位图作为背景,然后在其上绘制可绘制对象。这是为了模拟可以水平和垂直滚动的“ map ”。
这是通过使用 Canvas 完成的,然后绘制完整的“ map ”位图,然后将其他图像作为叠加层放在上面,然后仅将其可见部分绘制到屏幕上。
覆盖触摸事件以在滚动/滑动时重绘屏幕。
我确信这可能有大量的开销(通过创建完整图像的 Canvas 同时使用(绘制)它的五分之一)并且可以以与所解释的不同的方式完成,但我只是想知道在这种情况下人们会做什么,也许还有例子?
如果您需要更多信息,请告诉我,
谢谢,
西蒙
最佳答案
我做了 an example如何使用 BitmapRegionDecoder
执行此操作应用程序接口(interface)。该示例有一个大 (6000,4000) image of the world用户可以全分辨率滚动。 initial tag非常小且易于理解。
关于Android:可滚动(位图)屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4968859/