I have an interface with 2 buttons, both of them call the same interface but with different information. On the traditional interface I use prepareForSegue, but I don't know what's the equivalent one on the WatchKit.
You can do this in two ways:
In your storyboard you set an identifier in your segue:
and then you can use contextForSegueWithIdentifier
:
- (id)contextForSegueWithIdentifier:(NSString *)segueIdentifier {
if ([segueIdentifier isEqualToString:@"yourIdentifier"]) {
return aDictionaryWithYourInformation;
}
}
Or you can pass information with a context via code, with:
[self pushControllerWithName:@"YourViewController"
context:aDictionary];
This context is a dictionary and you have access to this dictionary in the - (void)awakeWithContext:(id)context
For segue navigation in Watchkit there are two methods in WKInterfaceController:
override func contextForSegueWithIdentifier(segueIdentifier: String) -> AnyObject? {
return //your object
}
and for tables
override func contextsForSegueWithIdentifier(segueIdentifier: String, inTable table: WKInterfaceTable, rowIndex: Int) -> [AnyObject]? {
return //your object
}
you can get the object you are passing in func awakeWithContext(context: AnyObject?)
of the interface controller you are pushing
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With