我正在开发一个 iPad 应用程序,用户可以在其中在画布上放置几个可编辑的文本框。每个文本框都应该可以通过用一根手指拖动来移动。用户可以使用两根手指旋转选定的文本框。
我想有两层。上层将接收两根手指的旋转手势。但是,如果用户只用一根手指触摸屏幕,它应该将触摸事件传递给下层的文本框(自定义 UIView)。是否有可能做到这一点?
我的第一次尝试是计算来自-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
和-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
使用的触摸次数[touches count]
。如果触摸次数为两次,则执行旋转。如果是单次触摸,它将“循环”遍历所有文本框并检查触摸是否在哪个文本框内,然后对该框执行移动。
有一个更好的方法吗?当有很多文本框时,循环是否会成为问题?
顺便说一句,我是堆栈溢出的新手。请告诉我我的问题是否过于模糊或任何问题,我会尝试更清楚地解释它。
谢谢你的帮助。