基于触摸事件的绘图

3

我正在使用UIView的触摸事件制作绘图工具。

问题在于:

尝试在触摸开始后非常接近移动时,touchesMoved事件不会发生。

因此,画2〜3像素线条非常困难。

enter image description here 看到它只是一个像素。

但在中它可以正常工作。

enter image description here

我认为这是设备的问题。

但在很受欢迎的绘画应用程序SketchBookX中,也能正常工作。

enter image description here

我没有使用UIScrollView或UIGuestureRocognizer。

请帮我解决这个问题。

  • 我拍了一些屏幕截图,但“新手不允许发布图像..” X(

如果你的问题太重要了,需要在某个在线站点上发布屏幕截图并分享链接。请务必仅返回翻译后的文本内容,不要进行解释。 - Rohit Vipin Mathews
@Rohit 好的,我添加了截图 :) - Minsu
干得好!相当详细的问题。 - Rohit Vipin Mathews
2个回答

0

哦,终于找到我的错误了!

enter image description here

如果在“touchesBegan”之后触摸移动非常短,则不会触发“touchesMoved”。
但是当“touchesEnd”时,它会给出移动点X(
这有点奇怪,但最终我解决了它 :)

你能告诉我如何在触摸事件中绘图吗?我读到了使用drawrec函数来绘制的方法。 - kartal

0

有一件事是,在模拟器上输入设备是鼠标,其中“触摸”的点是严格定义的。触摸屏幕的工作方式略有不同 - 2-3像素可能会被过滤为噪声。

人们通常使用UIBezierPath来插值“缺失”的像素:请参见增加touchesMoved的调用频率


我已经使用插值来实现非常快速的触摸移动。但它无法解决我的问题。如果没有任何touchesMoved事件,它就和一个像素没有什么不同 :( - Minsu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接