问题标签 [uitouch]

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 投票
3 回答
2932 浏览

iphone - 在 UIScrollView 中使用 UITouch

只是玩弄 SDK,我想知道 UITouch 事件是否可以在 UIScrollView 中工作。

我已经设置了一个处理大型 UIView 的 UIScrollView,在 UIView 内部是一个 UIImageView,我设法让 UITouch 将 UIImageView 拖到 UIScrollView 之外,但在它内部没有注册事件。

我想我想要完成的是在大 UIView 周围拖动 UIImageView 而 UIScrollView 沿着图像移动,如果用户将它拖动到 UIImageView 开始拖动时的 POS 之外,如果这有意义吗?

非常感谢

0 投票
1 回答
772 浏览

iphone - 如何检测动画子视图上的触摸?或者单击动画 UIButton?

我有一个正在移动的观点。视图有时在屏幕上,有时在屏幕外 - 它是屏幕宽度的两倍。在此视图中,我需要能够单击一些按钮。我已经尝试过以多种方式执行此操作-从 UIView 开始使用纯按钮使用触摸

我正在使用核心动画中的 CGPath 制作动画

非常感激任何的帮助

谢谢

0 投票
2 回答
786 浏览

cocoa-touch - iPhone“touchesBegan”和“touchesMoved”消息......不要移动到触摸中心

我正在修改苹果网站上的“MoveMe”示例。当我的控制器收到“touchesMoved”消息时,它会将被移动的对象移动到触摸的中心,因为(伪代码)object.center = touch.center。如何存储初始触摸的偏移量,以便如果我开始触摸/拖动到一侧,我的手指会在拖动时停留在那个位置?

0 投票
1 回答
1010 浏览

iphone - 在 UITableViewController 中处理触摸

我想在我的 UITableViewController 中实现额外滑动手势的处理。然而,似乎在表格视图的情况下,通常的触摸处理方法(如-[touchesBegan::]控制器)没有被调用。如何处理 UITableView 上的触摸?

0 投票
2 回答
3213 浏览

iphone - 添加子视图后未收到 touchesEnded/Moved/Cancelled

标题或多或少说明了一切。为了响应一个touchesBegan事件,我UIViewController重新着色并添加了一些子视图。

它从不接收touchesEnded. 我猜是因为添加的子视图以某种方式拦截了事件。我尝试调用resignFirstResponder子视图无济于事。

当我不添加子视图并且触摸事件被正常调用时,代码工作正常。

有任何想法吗?

谢谢

编辑:一些细节以及我如何修复它。

基本上我有一个带有一些子视图的主视图,当我触摸子视图时,事件将传递到主视图,但是,在这个事件中,我删除了子视图并在它们的位置添加了新的。触摸源自不再存在的子视图这一事实意味着其余的触摸都丢失了。

我通过在我的主视图中覆盖 hitTest:withEvent 来解决这个问题,以停止对子视图进行测试

0 投票
1 回答
1173 浏览

iphone - 模态UIViewController覆盖View时取消UITouch事件

我正在编写一个应用程序,用户必须用手指在屏幕上移动一些东西并放下它们。为此,我使用了必须移动的每个视图的 touchesBegan,touchesEnded... 功能。

问题是有时视图被使用 [UIViewController presentModalViewController] 函数显示的视图覆盖。一旦发生这种情况,我移动的 UIView 就会停止接收触摸事件,因为它被掩盖了。但是没有事件告诉我它停止接收事件,所以我可以重置移动视图的状态。

下面是一个例子来说明这一点。这些函数是主窗口中显示的 UIView 的一部分。它监听触摸事件,当我将手指拖动一段距离时,它会呈现一个覆盖所有内容的模态视图。在运行日志中,它打印接收到的触摸事件。

但是当我测试应用程序并触发要显示的模态对话框时,运行日志中的输出如下。

[会话开始于 2010-03-27 16:17:14 -0700。] 2010-03-27 16:17:18.831 modelTouchCancel[2594:207] touchesBegan 2010-03-27 16:17:19.485 modelTouchCancel[2594:207 ] touchesMoved 2.000000 2010-03-27 16:17:19.504 模型TouchCancel[2594:207] touchesMoved 4.000000 2010-03-27 16:17:19.523 模型TouchCancel[2594:207] touchesMoved 16.00000016:17:19.53-278 模型TouchCancel [2594:207] touchesMoved 26.000000 2010-03-27 16:17:19.596 modelTouchCancel[2594:207] touchesMoved 68.000000 2010-03-27 16:17:19.624 modelTouchCancel[2594:207] touchesMoved:0100-85.03-20000-016-6 17:19.640 modelTouchCancel[2594:207] touchesMoved 125.000000 2010-03-27 16:17:19.641 modelTouchCancel[2594:207] 显示模态

当 UIView 的触摸事件被模态视图中断时如何重置 UIView 的状态有什么建议吗?

0 投票
2 回答
18268 浏览

ios - 你如何知道在 touchesBegan 中被触摸的对象是什么?

我知道这是一个非常常见的问题,但是每个网站上的所有答案都不起作用!如果你还是不明白我的意思,那么也许这行代码会帮助你理解。

nextbutton, prevbutton, and more optionsbutton顺便说一句,当您触摸 时它不会做任何事情UIImageViews。我也尝试过使用isEqual:而不是==,但这也没有成功。有什么建议么?

0 投票
1 回答
993 浏览

iphone - iPhone - 如何同时跟踪触摸并允许点击按钮?

我想知道如何在 iPhone 屏幕上的任何位置跟踪触摸,并且仍然让 UIButtons 响应点击。

我对 UIView 进行了子类化,使其成为全屏视图和层次结构中的最高视图,并覆盖了它的 pointInside:withEvent 方法。如果我返回 YES,我可以跟踪屏幕上任何位置的触摸,但按钮没有响应(可能是因为视图被指示处理和终止触摸)。如果我返回 NO,则触摸会通过视图并且按钮会响应,但我无法跟踪触摸。

我需要子类 UIButton 还是可以通过响应者链实现?我究竟做错了什么?

0 投票
7 回答
14637 浏览

iphone - touchesEnded 没有被调用???或随机被调用

如果我在第一次触摸时抬起手指,那么它会很好地识别下一次触摸。只有当我连续按住第一次触摸然后尝试用不同的手指同时触摸不同的区域时。然后它将错误地将第二次触摸注册为来自第一次触摸。

更新它与 touchesEnded 有关直到最后一次触摸结束才被调用(它并不关心在你最终放开最后一​​个触摸之前你是否已经有 5 次其他触摸结束......它把它们全部调用为结束一旦最后一次触摸结束)

0 投票
1 回答
1881 浏览

ipad - 平板电脑。UIBarButtonItem 有一个 UIToolbarTextButton 类型的未记录视图。嗯?

我有一个 iPad 应用程序,其中有一个视图控制器,它是许多 UIGestureRecognizers 的 UIGestureRecognizerDelegate。我已经实现了 UIGestureRecognizerDelegate 的以下方法:

}

我的设置是一个全屏 EAGLView,在 EAGLView 顶部有一个 UIToolbar。工具栏上有一个 UIBarButtonItem。这里的想法是双击任何地方都会切换工具栏的外观。所有其他手势必须发生在 EAGLView 上。

我的问题是直接点击 UIBarButtonItem 显示 touch.view 是 UIView 子类 UIToolbarTextButton ,它没有记录并且不能自省。

嗯?

有人可以建议一种解决方法,最好是使用某种形式的内省善良?

谢谢,
道格

谢谢,

道格