我们如何为 WKInterfaceController 移植 addGestureRecognizer(recognizer)
Posted
技术标签:
【中文标题】我们如何为 WKInterfaceController 移植 addGestureRecognizer(recognizer)【英文标题】:How can we port addGestureRecognizer( recognizer ) for WKInterfaceController 【发布时间】:2015-03-02 11:48:37 【问题描述】:以下代码是使用 viewController 实现的,我可以为 Apple Watch 做同样的事情并添加动画吗?
let filteredSubviews = self.view.subviews.filter( $0.isKindOfClass(UIImageView) )// 2
for view in filteredSubviews
// 3
let recognizer = UITapGestureRecognizer(target: self, action:Selector("handleTap:"))
recognizer.numberOfTapsRequired=1
// 4
recognizer.delegate = self
view.addGestureRecognizer(recognizer)
returnedAray=tempArray
//TODO: Add a custom gesture recognizer too
我只需要知道 WatchKit 的 addGestureRecognizer(recognizer) 的替代方法。
【问题讨论】:
【参考方案1】:您不能在 Watch 应用程序中使用手势识别器。
但是你可以使用带有上下文“Group”而不是“text”的 WKInterfaceButton:
所以按钮将包含任何组,您可以在点击时实现动作。
例子:
按钮包含带有图像和标签的组。
【讨论】:
请回答相关问题:/ 2 Samrez Ikram:不可能使用手势识别器。 WKInterfaceObject 不是 UIResonder 或 UIView。但是您可以创建一个 BIG WKInterfaceButton(全屏、透明等)并处理点击按钮。选择 context = "Group" 并将任何内容填充到该组:) 您也可以使用 WKInterfaceTable 并使用 -(void)table:(WKInterfaceTable *)table didSelectRowAtIndex:(NSInteger)rowIndex 处理对单元格的点击【参考方案2】:您不能在 Apple Watch 应用中执行手势识别或触摸事件。
【讨论】:
那么在 WatchKit 中我们可以做些什么来敲击呢? 您可以将按钮和表格添加到您的手表应用程序,并响应用户点击按钮或表格单元格。您还可以向您的应用程序添加一个在强制按下时激活的菜单。请记住,Watch Apps 的代码不是本机应用程序。它们是在 iPhone 上运行的扩展。实际的 Watch App 只是 UI。以上是关于我们如何为 WKInterfaceController 移植 addGestureRecognizer(recognizer)的主要内容,如果未能解决你的问题,请参考以下文章