如何在Android

时间:2016-11-04 07:54:47

标签: java android surfaceview drawbitmap

我正在开发和Android应用程序,但我对此有一些疑问 我的项目的可行性。

我必须实现一个由显示图像的ImageView组成的自定义布局,特别是VectorDrawable。

重叠ImageView有一个SurfaceView:

  • 捕捉触摸的每个坐标;
  • 每次触摸屏幕时绘制一个位图(在某个位置)。

目的是显示背景图像并将其用作参考,每次用户触摸屏幕时,必须插入SurfaceView上的标记,此技术允许模拟在图像上插入标记。

问题是:

还有其他更好的方法吗? 我已经实现了,这个想法可行,但我对SurfaView有一些限制(例如我无法在ScrollView中插入它)。

最后:

考虑到到目前为止的推理,假设有一个显示VectorDrawable的ImageView,是否可以创建一个放大和缩小图像的函数(VectorDrawable)?

P.S。我为提出两个问题而道歉,但整体密切相关,我认为打开两个线程是愚蠢的

1 个答案:

答案 0 :(得分:1)

任务1:使用SurfaceView可以完成您的任务,但我假设在您绘制图像后,如果是这种情况您可能需要分别跟踪每个图像。如果您的任务只是绘制图像,您还可以覆盖View,它可以执行相同的任务,但也会提供透明度和基本布局实现。 ViewSurfaceView之间的区别在于性能,SurfaceView是一个非常低级别的双缓冲区,可以让您获得更多控制权。此外,如果图像数量很少,您可以覆盖FrameLayout并生成ImageView。它效率不高,但实施起来会更容易。

任务2:您可以使用ImageViewsetScaleX轻松扩展setScaleY。但这可能会使图像像素化。加载大Bitmap然后在自定义视图上绘制它将是一种更好的方法。