我正在尝试在ViewController
(第一个视图)和BrowserController
(第二个视图)之间创建一个自定义 segue。
目前我有...
CustomSegue.h:
#import <UIKit/UIKit.h>
@interface CustomSegue : UIStoryboardSegue
@end
CustomSegue.m:
#import "CustomSegue.h"
@implementation CustomSegue
- (void)perform {
NSLog(@"Perform Method Running");
UIViewController *ViewController = (UIViewController *) self.sourceViewController;
UIViewController *BrowserController = (UIViewController *) self.destinationViewController;
NSLog(@"Starting duration...");
[UIView transitionWithView:ViewController.navigationController.view duration:0.2
options:UIViewAnimationOptionTransitionFlipFromLeft
animations:^{
NSLog(@"Animation section");
[ViewController.navigationController pushViewController:BrowserController animated:NO];
}
completion:NULL];
NSLog(@"Performance Method Completion");
}
当我单击按钮转到下一个视图时,什么也没有发生。
我将视图 segue 设置为“自定义”(CTRL 拖动)并将我的类定义为“CustomSegue”。我看到在 CTRL 和拖动之后有两个“自定义”选项可供选择 - 我已经尝试了这两个选项以防万一(我两次都重新定义了我的类),但问题仍然存在。我还使用了一个NSLog
并看到该perform
方法正在被调用,我没有错误,但是该按钮仍然没有执行下一个视图的转场(或任何转场)。
触发segue的按钮
- (IBAction)browserButton:(id)sender
这是我可以缩小范围的最后一个区域......我需要添加任何内容IBAction
来告诉它使用新的 segue 吗?