Ich versuche, meine eigene, benutzerdefinierte UIStoryboardSegue
zu schreiben, in der ein UIView
'gleitet' von sourceViewController
zu destinationViewController
. Derzeit habe ich den folgenden Code:Benutzerdefiniertes UIStoryboardSegue funktioniert nicht
- (void)perform {
UIViewController *sourceViewController = self.sourceViewController;
UINavigationController *navigationController = [[self sourceViewController] navigationController];
RestaurantViewController *destinationViewController = self.destinationViewController;
destinationViewController.colors.frame = CGRectMake(0, 0, 10, 10);
[sourceViewController.view addSubview:destinationViewController.tables];
[UIView animateWithDuration:10.0
delay:0.0
options:UIViewAnimationOptionCurveEaseInOut
animations:^{
destinationViewController.tables.frame = CGRectMake(100, 100, 100, 100);
}
completion:^(BOOL finished){
[destinationViewController.tables removeFromSuperview]; // remove from temp super view
[navigationController pushViewController:destinationViewController animated:NO]; // present VC
}];
}
Als ein Test, spiele ich nur mit dem Rahmen der Tabellenansicht. Ich setzte die Dauer auf satte 10 Sekunden, damit ich alles sehen konnte. Allerdings schnappt sich die destinationViewController
nur, und ignoriert den gesamten Code, den ich geschrieben habe. Was mache ich hier falsch?