Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/113.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过移动其他视图触发iOS触摸事件_Ios_Objective C_Quartz Graphics - Fatal编程技术网

通过移动其他视图触发iOS触摸事件

通过移动其他视图触发iOS触摸事件,ios,objective-c,quartz-graphics,Ios,Objective C,Quartz Graphics,以下是我正在尝试实现的场景: 我已经有了一个视图,可以让用户通过直接触摸视图内部来绘制涂鸦(就像涂鸦画布一样)。此视图实现了触摸开始、触摸移动和触摸结束处理程序,以从触摸事件参数绘制线条 现在,我希望用户能够在此画布视图上拖动和移动另一个UIView,并且仍然可以像直接触摸一样绘制线条。例如,用户可以在画布视图上拖动笔图像视图以绘制笔样式线 在这种情况下,如何将画笔图像视图的移动转移到画布上,使其能够识别?还有一个问题:如果我想让这个画布视图只识别其他视图的移动,而不是直接触摸,我应该怎么做 (

以下是我正在尝试实现的场景:

我已经有了一个视图,可以让用户通过直接触摸视图内部来绘制涂鸦(就像涂鸦画布一样)。此视图实现了
触摸开始
触摸移动
触摸结束
处理程序,以从触摸事件参数绘制线条

现在,我希望用户能够在此画布视图上拖动和移动另一个UIView,并且仍然可以像直接触摸一样绘制线条。例如,用户可以在画布视图上拖动笔图像视图以绘制笔样式线

在这种情况下,如何将画笔图像视图的移动转移到画布上,使其能够识别?还有一个问题:如果我想让这个画布视图只识别其他视图的移动,而不是直接触摸,我应该怎么做


(很抱歉,这个问题有点太笼统了,我只是想得到一些提示)。。。谢谢

看待这个问题的更好方法是

如何将画布上的运动转移到笔的位置 图像视图

那很容易。您已经拥有了跟踪画布中移动的所有代码(touchesBegind、touchesMoved、toucheseEnd),因此只需更改笔视图的
center
属性即可跟踪画布中的移动。(显然,您需要应用较小的X和Y偏移,以将画笔视图的
中心放置在正确的位置)

您需要注意的唯一不明显的细节是笔视图必须将
userInteractionEnabled
设置为
NO
。这样,笔视图就不会干扰到达画布视图的触摸


请注意,
UIImageView
默认情况下禁用了用户交互,因此如果笔视图是
UIImageView
,则无需执行任何操作。但是,如果使用通用的
UIView
显示画笔,则需要在属性检查器下禁用情节提要中的用户交互,或在代码中禁用它,例如在
viewDidLoad

中为什么拖动图像?它是否有助于用户选择样式?这肯定没用performance@Wain这是项目要求。。。很抱歉,我无法解释更多,但这符合应用程序的特定场景。