0

Force Touch Menu 的一些问题:

  1. 现在,当我执行 Force Touch 并按下我的菜单项之一时,我的 Menu 实现的整个 InterfaceController 正在加载新的。这是可以避免的吗?

  2. 我已经为我的 InterfaceController 实现了一个带有 4 个菜单项的菜单。

使用此菜单项之一,我想启用/禁用我的按钮的触觉反馈。

我的按钮方法是这样的:

- (IBAction) but1Pressed {
       [[WKInterfaceDevice currentDevice] playHaptic:WKHapticType.Click];
       // Do something
}

如果用户在 ForceTouchMenu 中禁用 TapticEngine,我该如何禁用它?

4

1 回答 1

0
  1. 不,因为到今天这是不可能的。

  2. 如果我理解正确,您需要一个BOOL定义当您的界面控制器中的按钮被按下时应用程序是否应该执行触觉反馈的定义。

要实现这一点,请执行以下操作:

BOOL shouldGiveTapticFeedback = YES

然后,您需要一种方法来BOOL在按下相应的菜单项时更改它:

- (IBAction) tapticFeedbackChangeButtonPressed {

   //change BOOL value

   shouldGiveTapticFeedback = !shouldGiveTapticFeedback

}

最后,您需要检查是否应在按下界面控制器中的按钮时播放触感反馈:

- (IBAction) interfaceButtonPressed {

   if(shouldGiveTapticFeedback) {

      //play sound

      [[WKInterfaceDevice currentDevice] playHaptic:WKHapticType.Click];

   }
}
  1. 不,这也不可能
于 2015-11-04T09:30:10.533 回答