将事件添加到 table 的 WatchKit 项目
Adding event to a WatchKit item of a table
我创建了一个 table,其中的项目包含一些组和一些标签。我希望当用户点击该项目时,我会收到一个动作。我该怎么做?是否可以添加一个覆盖table项的所有区域的不可见按钮?
您需要将 table 行连接到另一个界面控制器,方法是从行中拖动控件,然后选择 push
或 modal
。
为 Storyboard Segue 提供一个标识符(字符串)。
然后,要将数据传递给界面控制器,请覆盖 contextForSegueWithIdentifier:inTable:rowIndex
:
Swift:
override func contextForSegueWithIdentifier(segueIdentifier: String, inTable table: WKInterfaceTable, rowIndex: Int) -> AnyObject? {
if segueIdentifier == "identifier" {
return "banana"
}
return nil
}
Objective-C:
- (nullable id)contextForSegueWithIdentifier:(nonnull NSString *)segueIdentifier inTable:(nonnull WKInterfaceTable *)table rowIndex:(NSInteger)rowIndex {
if ([segueIdentifier isEqualToString:@"identifier"]) {
return @"banana";
}
return nil;
}
按钮可以包含组(你必须在编辑器中选择这个选项)所以问题解决了!我不明白为什么这个答案被评为负面。有效!
我创建了一个 table,其中的项目包含一些组和一些标签。我希望当用户点击该项目时,我会收到一个动作。我该怎么做?是否可以添加一个覆盖table项的所有区域的不可见按钮?
您需要将 table 行连接到另一个界面控制器,方法是从行中拖动控件,然后选择 push
或 modal
。
为 Storyboard Segue 提供一个标识符(字符串)。
然后,要将数据传递给界面控制器,请覆盖 contextForSegueWithIdentifier:inTable:rowIndex
:
Swift:
override func contextForSegueWithIdentifier(segueIdentifier: String, inTable table: WKInterfaceTable, rowIndex: Int) -> AnyObject? {
if segueIdentifier == "identifier" {
return "banana"
}
return nil
}
Objective-C:
- (nullable id)contextForSegueWithIdentifier:(nonnull NSString *)segueIdentifier inTable:(nonnull WKInterfaceTable *)table rowIndex:(NSInteger)rowIndex {
if ([segueIdentifier isEqualToString:@"identifier"]) {
return @"banana";
}
return nil;
}
按钮可以包含组(你必须在编辑器中选择这个选项)所以问题解决了!我不明白为什么这个答案被评为负面。有效!