一个按钮push到另外一个页面 ,有时会出现push两次重复页面的效果 。
解决方式如下:
这里遵守协议 定义一个push的bool值来判断是否正在push。
@interfaceStartViewController ()<UIScrollViewDelegate,UINavigationControllerDelegate>
@property (nonatomic,getter=isPushing)BOOL pushing;
- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated {
if (self.pushing ==YES) {
NSLog(@"被拦截");
return;
}else {
NSLog(@"push");
self.pushing =YES;
}
[self.navigationControllerpushViewController:viewControlleranimated:animated];
}
#pragma mark - UINavigationControllerDelegate
-(void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
self.pushing =NO;
}