很多时候我们的程序操作结构都是UITabBarController+UINavigationController,每个UITabBarController item里面都有很多层的UINavigationController,而UITabBarController默认有一个事件就是双击UITabBarController item时,会把这个item里的UINavigationController pop 到root,而我们有时不希望一下子就pop到了根视图,因为可能还会有一些逐层处理功能需要完成。这个时候如果想屏闭掉这个双击事件只留下单击切换标签事件的话,就可以参考下面的方法重写UITabBarController的代理:

 

  1. #pragma mark -  
  2. #pragma mark UITabBarControllerDelegate  
  3.   
  4. - (BOOL)tabBarController:(UITabBarController *)tbc shouldSelectViewController:(UIViewController *)vc {  
  5.     UIViewController *tbSelectedController = tbc.selectedViewController;  
  6.       
  7.     if ([tbSelectedController isEqual:vc]) {  
  8.         return NO;  
  9.     }  
  10.       
  11.     return YES;  
  12. }  

 

相关文章:

  • 2021-05-11
  • 2022-12-23
  • 2021-10-17
  • 2021-11-17
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-25
猜你喜欢
  • 2022-12-23
  • 2022-01-21
  • 2022-12-23
  • 2021-11-01
  • 2021-05-07
  • 2021-07-19
相关资源
相似解决方案