0

我试图找出iOS中解决以下问题的最佳方法:

基本上,我用 UIButtons 构建了一个 4x6 平铺矩阵,每个都包含一个字母。按钮包含在 UIView 中。(苹果、快、树)

A
P F
P A
L S
E T
T R E E

所有 UIButton 都将 userInteractionEnabled 设置为 FALSE 以接收 touchesBegan 调用。在创建时,所有 UIButtons 都被放置到 NSMutableArray 中。

我的挑战是如何从字母(起点)滑动和拖动并移动到目标字母,试图“找到”完整的单词。有点像 Ruzzle 应用程序,但只有水平和垂直滑动。被“多选”的 UIButtons 必须更改背景颜色作为视觉指示。

我通过 touchesMoved 接收触摸位置。是否必须在 touchesMoved 下触发整个检测代码?

最好的方法是什么?和最少的过程密集型

4

1 回答 1

0

与其使用 touchesBegan/Moved 方法,不如看看UIControlEventTouchDragEnter/ UIControlEventTouchDragInside events?这将为您提供更好的性能,因为仅当触摸进入按钮或在按钮内拖动时才会调用关联的操作。在这些方法中,您可以在触摸进入它们的边界时继续按下数组中的新按钮,并检查它们相对于先前按下的按钮的位置。在这种方法中,我认为您将不得不使用UIControlEventTouchDown事件处理第一个按钮触摸。
我很想知道你最终是如何实现它的。

于 2013-06-16T17:33:00.780 回答