当手指滑过多个 UIView 时,如何检测特定 UIView 中的触摸

发布于 2024-11-08 22:59:30 字数 103 浏览 4 评论 0原文

我试图解决的场景是我有几个 UIView 作为主 UIView 的子视图。我想要做的是突出显示视图矩形,例如当手指在视图上滑动时更改其边框。类似于在超文本链接上移动/拖动鼠标光标时发生的情况。

The scenario I am trying to solve is I have several UIViews as subviews of a master UIView. What I want to be able to do is highlight a views rect by lets say changing its border as a finger slides across the view..similar to what happens when you move/drag your mouse cursor over a hypertext link.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

江湖正好 2024-11-15 22:59:30

您可以在 touchesMoved: 方法中获取触摸的位置,然后询问主 UIView 哪个视图被触摸:

- (void)touchesMoved: (NSSet *)touches withEvent:(UIEvent *)event {
    UIView *subview = [masterView hitTest:[[touches anyObject] locationInView:masterView] withEvent:nil];
...
}

You can get the location of the touch inside your touchesMoved: method, then ask the master UIView which view was touched:

- (void)touchesMoved: (NSSet *)touches withEvent:(UIEvent *)event {
    UIView *subview = [masterView hitTest:[[touches anyObject] locationInView:masterView] withEvent:nil];
...
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文