问题标签 [uiresponder]

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 投票
1 回答
593 浏览

cocoa-touch - cocoa touch hitTest withEvent 可以识别 UIView 子类

我有一个带有子视图的视图,这些子视图是 UIView 的子类,在示例中子类称为 ESDcelda

现在我想知道我用以下方法用touchEvents指向什么样的UIView,但在日志中指针“vista”只能识别self类或UIView类,有什么方法可以识别子类“celdaSel “?

0 投票
2 回答
2333 浏览

uitableview - UIButton 没有收到 UIScrollView 后面的操作

我把UIButton里面UITableViewCell放在UITableView那个后面UIScrollView。我将前向接触细分UIScrollViewUITableView.

所以方法 fromUITableViewDelegate didSelectRow正在正确调用。问题是UIButton表格单元格内部没有接收TouchUpInside操作。

如何在不删除ScrollView的情况下解决此问题TableView

编辑:

我通过检测哪个视图将接收触摸解决了这个问题。这是代码:

0 投票
3 回答
2397 浏览

iphone - 我可以在我的 AppDelegate 中接收震动事件吗?

应用程序委托是一个 UIResponder 子类(从 Xcode 4.2 开始),因此它应该能够接收触摸和运动事件。我在我的 AppDelegate 类中添加了这个,但它不起作用:

它当然可以在视图控制器中工作,但我想检测应用程序范围内的抖动。

0 投票
2 回答
1172 浏览

ios - UITextView UIResponderStandardEditActions 文本格式切换状态

如何确定文本格式的UIResponderStandardEditActions的当前状态?例如,如果我执行以下操作:

如何查询 textView 以了解粗体状态现在是打开还是关闭?这仅适用于没有选择的光标(即范围长度为 0)。因此, enumerateAttribute 似乎不起作用。

谢谢你。

0 投票
9 回答
28060 浏览

ios - 集合视图中单元格中的 UIButton 未在事件内部接收修饰

以下代码表达了我的问题:(它是自包含的,您可以使用空模板创建一个 Xcode 项目,替换 main.m 文件的内容,删除 AppDelegate.h/.m 文件并构建它)

基本上我正在使用集合视图创建一个 Springboard 类型的 UI。我的UICollectionViewCell子类(Cell)有一个按钮,该按钮部分位于单元格的contentView(即其超级视图)边界之外。

问题是单击contentView边界之外的按钮的任何部分(基本上是按钮的 3/4)不会调用按钮操作。只有单击与contentView重叠的按钮部分时,才会调用按钮的操作方法。

我什至重写了Cell-pointInside:withEvent:中的方法,以便确认按钮中的触摸。但这对按钮点击问题没有帮助。

我猜这可能与collectionView如何处理触摸有关,但我不知道是什么。我知道UICollectionView是一个UIScrollView子类,我实际上已经测试过覆盖-pointInside:withEvent:包含部分重叠按钮的视图(将子视图制作为滚动视图)可以解决按钮单击问题,但它在这里不起作用。

有什么帮助吗?

** 补充:作为记录,我目前对该问题的解决方案包括在contentView中插入一个较小的子视图,从而使单元格具有其外观。删除按钮被添加到contentView中,使其矩形实际上位于 contentView 的范围内,但仅部分重叠单元格的可见部分(即插入子视图)。所以我得到了我想要的效果,并且按钮工作正常。但是我仍然对上面原始实现的问题感到好奇。

0 投票
1 回答
729 浏览

iphone - 如何禁用弹出菜单项,如选择、全选、建议...、定义(在 UIWebView 上)?

如何禁用弹出菜单项,如SelectSelect AllSuggest...Define (on UIWebView)?

我在帮助中找到了以下信息,但不明白如何使用它:

对于编辑菜单命令,这是共享的UIApplication 对象。根据上下文,您可以向发送者查询信息,以帮助您确定是否应启用命令。

0 投票
1 回答
61 浏览

iphone - 在 plist iPhone 中保存事件及其发生的时间

我有一个 UIViewcontroller,里面有不同的 UI 元素。我想找到一种方法来跟踪该视图上发生的事件、它的发生点以及事件发生的时间,而无需进行任何硬编码以将其保存在相应的操作中。此外,该过程不应中断正在发生的事件。我想将这些细节保存到一个 plist 中。有人可以告诉我如何实现这个吗?任何建设性的建议表示赞赏。

0 投票
1 回答
543 浏览

iphone - 识别按下的标签按钮以移动到下一个响应者

我有多个从键盘输入的自定义类实例。你可以想到UITextField(但他们不是UITextField,他们是NSObject)。但是,它们都有一个属性UIControl *control

这些对象被实例化并放入一个数组(顺序很重要),并且它们以相同的顺序放置在屏幕上。

场景 1:用户在第一个对象上的选项卡,它成为第一响应者。用户点击另一个对象(来自同一类)并成为第一响应者。没问题。

场景 2:用户在第一个对象上的选项卡,它成为第一响应者。用户点击TAB键盘按钮(iPad 或 iPhone 或无线键盘),我希望数组中的下一个对象成为下一个响应者。iOS 随机选择 [? 或者有些逻辑我不清楚]另一个与我想要的顺序不同的对象。

问题:因为这些对象都是NSObjects,如何截取到下一个对象的过渡。我尝试使用标签或跟踪谁是第一响应者,但问题是,如果用户无序地点击对象,那很好 - 我不想拦截它。我只想拦截从一个对象到花药的转换,只有通过点击键盘的TAB(或NextReturn)按钮。

任何想法?谢谢。

0 投票
1 回答
2949 浏览

ios - UITableViewCell 不会成为第一响应者(在单元格手势上显示 UIMenuController)

我有一个带有UITabBar. 每个选项卡都是一个,里面UINavigationController有几个UIViewControllers。其中一个视图控制器包含一个UITableView,我想显示一个用于删除长按的浮动菜单UITableViewCell

我正在使用UIMenuController但它没有显示,因为单元格拒绝成为第一响应者。

这是我的代码:

在 UITableViewCell 我已经覆盖了方法:

关于为什么细胞没有成为第一响应者的任何想法?

谢谢!

0 投票
1 回答
1070 浏览

iphone - UIScrollView touch down 由 subview 处理

我有UIScrollView一个带孩子的UIView。我已经继续UITapGestureRecognizer向子视图添加了一个,如下所示:

// 和处理程序

这段代码可能在视图控制器中,但我有理由在视图本身中处理触摸。

如您所见,我正在测试水龙头的状态。然而,唯一被调用的状态是用户从屏幕上移开手指,完成点击。即 UIGestureRecognizerStateEnded。

当用户点击子视图(在滚动视图中)时,我知道父滚动视图“拦截”所有触摸并决定它们是否相关(用于平移、缩放等......),如果不通过触摸( es) 到它的子视图。因此touchesBegan:withEvent:永远不会在滚动视图的子视图上被调用。

我想要的是在子视图中检测触摸事件(即用户将手指放在屏幕上的那一刻),无论用户随后是平移、滚动还是点击,并在其中处理该点击孩子。滚动视图的行为应该保持不变。

也许有更好的方法没有手势识别器,例如覆盖hitTest:withEvent,但我那微不足道的人脑似乎无法弄清楚!

更新/示例:如果您查看一个UITableView包含单元格的滚动视图。您会注意到将手指放在单元格上会立即突出显示它。然后滚动“取消”点击的行为。大体上是这样的想法。