我们如何为 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)的主要内容,如果未能解决你的问题,请参考以下文章

如何为我们的系统提供 API [关闭]

我们如何为 Socket 连接编写测试用例

我们如何为客户获取实时 Instagram 位置通知?

如何为事实表建模

forge Viewer - 我们如何为 svg 标记添加 CAMERA_CHANGE_EVENT?

如何为导航栏设置 CAGradientLayer 动画