问题标签 [touchesmoved]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
347 浏览

iphone - 调用 touchesMoved 时具有核心图形和不稳定帧速率的自定义图形

我正在使用核心图形在 drawRect 方法中的 UIView 内创建一个自定义图形。我遇到的问题是在用户拖动手指的情况下移动该图表。例如,如果我的图表有 500 个点,而屏幕只有 320 像素宽,我只能显示这些点的子集,其余的点可以通过触摸和拖动来访问以查看图表的其余部分看到这张图片

我面临的问题是被感动了,这使得拖动图表相当不稳定,并且不像我想要的那样快速和响应。除了使用 CoreGraphics 之外,我对其他建议持开放态度,但这似乎是最佳选择。请在下面查看我的 drawRect 方法,并提前致谢!

}

0 投票
1 回答
398 浏览

ios - iOS:目标如何一次让一个图像发光,因为手指被拖过一系列图像中的每一个

目标:当手指在一系列图像中的每一个上拖动时,一次使一个图像发光。

为了自己解决这个问题,我尝试将触摸图像的 Alpha 更新为 1.00,同时将图像系列中的所有其他图像设置为 alpha 0.25,因为手指通过 touchesMoved? 但是我下面的方法没有产生预期的结果。

在 viewDidLoad 中使用以下模式为八个图像中的每一个创建 Glow 叠加图:

(重复上述模式以独特地创建其余八张图像中的每一张)。

touchesMoved 模式如下所示:

(重复上述模式以唯一处理其余八张图像中的每一张)。

上面的代码片段将点亮第一个触摸的图像,但是当您在视图中拖动时,touchesMoved 不会更新手指拖动过的任何后续图像的 alpha,直到释放触摸并启动新的触摸。

控制台仅显示从第一个触摸的图像开始的 touchesMoved NSLog,只要手指被拖动,无论随后哪个图像在拖动的手指下,都会不断重复第一个触摸的图像的 NSLog。

我非常感谢您的建议以及任何替换或更新上述方法的示例,以产生每次获得一个图像发光的预期结果,因为手指在一系列图像中的每一个上拖动。

谢谢,

0 投票
3 回答
15772 浏览

ios - 由多个视图处理的触摸事件

UIViewUITableView. 我正在使用UITableView来显示一些数据,同时,我想覆盖一个跟随手指的动画(例如,留下痕迹)。

如果我做对了,我需要UIView子类和UITableView. 我怎样才能做到这一点?是否有可能,即touchesMoved在 UIView 子类上触发,然后在上触发UITableView

非常感谢您的帮助。

0 投票
1 回答
219 浏览

ios-4.2 - 使用 LLVM-GCC 解决运行 iOS 4.2.1 的第二代设备上的问题的影响

我有一个使用触摸事件在屏幕上绘图的应用程序。我用UITouch locationInView返回CGPoint的触摸。问题是 x 和 y 坐标总是相同的——但仅在运行 iOS 4.2.1 的第二代设备上并且仅当我的应用程序以发布模式构建时。这似乎也只是直接从一个touchesMovedtouchesEnded事件对象进行触摸时出现的问题,因为我的按钮正确地响应了触摸。

感谢http://getmoai.com/forums/new-users/ios-touch-sensor-y-co-ordinate-always-the-same-as-x/上的帖子,我能够通过使用解决问题LLVM-GCC 编译器而不是更新的 LLVM 3.0 编译器并使用优化级别 0。

有趣的是,使用 GCC 编译器更正了我收到的触摸位置,touchesEnded同时更改了优化级别以-O0更正我收到的触摸位置touchesMoved。我无法解释为什么会这样,但现在我很高兴我的应用程序正在这些设备上运行。

那么我的问题是——使用旧编译器将我的应用程序交付到商店有什么缺点?(我了解优化级别的影响。)有没有办法配置项目,以便我只为 iOS 4.2.1 和/或第二代设备使用较旧的编译器和较低的优化级别?

0 投票
1 回答
279 浏览

ios - 吃掉从一层开始的触摸并阻止 ccMoved 调用(或 touchesMoved)

使用 Cocos2D 创建射击游戏子弹地狱风格的游戏。一根手指拖动移动船,角落里有火层。

从我的主层,我检测到 ccTouchesBegan、ccTouchesMoved 和 ccTouchesEnded。我将一个 CGPoint 传递给我的逻辑控制器。

如果着陆点位于 2 个“触发按钮”层之一内,那么我会触发触发事件。否则我为玩家飞船设置一个新位置。当触摸移动到火层区域之外时,我为玩家船设置了一个新位置。

问题:由于“触摸移动设置玩家位置”规则,将手指从火层内拖动到非火层空间会导致船跳到该点。

我怎样才能更好地构建这个?

也许我需要一个“触摸对象”数组,并在穿过火层边界时将它们无效。我觉得我在这里遗漏了一些关于触摸处理的重要概念,如果理解的话,它将提供我想要的控制,而不必破解一个“触摸对象”类,该类将您点击的位置与一系列位置进行比较。

请指教。谢谢!

(是的,我看到了:当层重叠时,如何将触摸处理限制在一层?。这并没有回答我的问题。rectContainsPoint 是我如何确定触摸是在火层内还是火层外)。

0 投票
1 回答
866 浏览

ios - iOS Touches Began 后续触摸仅在第一次触摸移动时到达

我正在为钢琴应用程序覆盖 UIView 中的触摸方法。

如果我用一根手指触摸 iPhone 或 iPad,我会得到 - 正如预期的那样 - touchesBegan callabck。如果我用第二根手指触摸,我会在 touchesMoved 回调中得到该事件。这一切都很好,但是只有当我用第二个手指触摸时第一根手指移动时,我才会收到第二个(和第三个等)回调。

对于钢琴应用程序来说,这是一个问题,因为我需要能够非常快速地触摸。

有人知道这个解决方法吗?除了使用 touchesBegan/Moved/Ended 方法之外,还有其他选择吗?

0 投票
1 回答
703 浏览

iphone - 增加 touchesMoved 方法的调用频率

我目前正在开发一个应用程序,其中包括一个绘画功能。它实际上并没有那么糟糕,但问题是,touchesMoved 方法的刷新率或调用频率太糟糕了。

如果您在屏幕上快速移动手指,线条会出现很多边缘,看起来不太好。所以我考虑增加这种方法的调用频率。这对我的问题来说是一个好的甚至可能的解决方案吗?

也许你可以帮我解决我的问题。先感谢您。

0 投票
3 回答
701 浏览

ipad - iPad Landscape 开始搞砸了

我的应用程序只允许在横向方向,并且它以横向启动。因此,当 iPad 为横向时,左上角为 (0,0),所以一切正常。

但是,当我拿起“touchesBegan”时......它无法正常工作。只有当我像 iPad 右侧的三分之二那样轻按时,它才会触动。我知道它与方向有关,因为该应用程序实际上只是带有单个 UIView 的空白屏幕,没有别的。这很简单。没有其他可能的问题会导致这种情况。

具体来说,如果我在 touchesBegan 函数中打印出 x 位置,并且如果 iPad 用左侧的主页按钮按住,则宽度为 1024。而 1024-768 为 256。这正是它所在的 x 位置开始感觉到我的触摸。x=256 左边的任何东西都感觉不到触摸。

我该如何解决?

0 投票
2 回答
1104 浏览

iphone - 使用 touchesMoved 进行缩放:

我有一个使用 UIBezierPath 制作的饼图。我现在需要这些单独的路径(饼图)是可扩展的。我相信你需要一个能够使用捏缩放的视图,所以我认为 touchesMoved: 是要走的路(除非有解决方法)。

任何建议或帮助表示赞赏!

更新/进度代码

MySliceClass.m

我的切片视图.m

0 投票
1 回答
1876 浏览

objective-c - 如何在目标 c 中存储手指运动的路径?

我想在 iPhone 屏幕上存储手指移动的路径。到目前为止,我只是在阅读触摸并将 CGPoints 添加到 NSMutableArray。当我尝试打印该数组中的所有 cgpoint 时,它是如何丢失中间点的。有更好的方法吗?我们可以直接存储整个路径吗?

这是我正在使用的代码