`

禁用UITabBarController双击事件

阅读更多

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

 

 

#pragma mark -
#pragma mark UITabBarControllerDelegate

- (BOOL)tabBarController:(UITabBarController *)tbc shouldSelectViewController:(UIViewController *)vc {
    UIViewController *tbSelectedController = tbc.selectedViewController;
	
    if ([tbSelectedController isEqual:vc]) {
        return NO;
    }
	
    return YES;
}

 

 

分享到:
评论

相关推荐

    ios-UITabBarController.zip

    自定义UITabBarController

    自定义UITabBarController

    在iOS应用开发中,`UITabBarController` 是一个非常重要的组件,它用于管理多个子控制器,并在底部显示一个带有选项的标签栏。然而,系统默认的`UITabBarController`样式有时无法满足设计师或开发者对独特界面的需求...

    UITabBarController和UINavigationController混用

    在iOS应用开发中,`UITabBarController` 和 `UINavigationController` 是两种常用且重要的控制器,它们各自负责不同的界面展示逻辑。`UITabBarController` 通常用于实现底部标签栏切换不同功能模块,而 `...

    ios-自定义UITabBarController.zip

    4. **事件处理**:自定义的`TabBarController`可能包含了对触摸事件的处理,比如滑动切换标签页,或者通过手势识别器实现更多交互效果。 5. **子控制器管理**:`UITabBarController`会自动管理其子控制器,但自定义...

    UItabbarController 简单使用Demo

    `UITabBarController`提供了丰富的API和代理方法来支持这些功能,例如`tabBarController:didSelectViewController:`代理方法可以监听用户点击tab事件。 在提供的`tabbar`压缩包文件中,可能包含了实现以上示例的源...

    UINavigationController+UITabBarController框架

    我们写iOS项目的时候,基本都是一个UINavigationController套一个UITabBarController的形式,就是上面一个导航栏,下面几个按钮的工具条的形式。我写了几个应用,发现如果每次都重新写的话完全就是浪费精力和时间,...

    ios自定义UITabBarController

    在iOS应用开发中,`UITabBarController` 是一个非常重要的组件,它用于管理多个视图控制器,并在底部显示一个选项卡栏,用户可以通过点击这些选项卡在不同的视图之间切换。然而,系统的`UITabBarController` 默认...

    UITabBarController Demo代码

    6. **处理事件** 当用户点击TabBar时,`UITabBarController`会发送`UITabBarController didSelectViewController:`通知,开发者可以在这个方法中处理相应的逻辑。 7. **`UITabBarControllerDelegate` `...

    页面跳转 UITabBarController+UINavigationController+UIViewController

    在`UIViewController`中,你可以设置和管理`view`属性,这个`view`是实际出现在屏幕上的视图,你可以通过它添加子视图,进行布局,处理触摸事件等。 在进行页面跳转时,除了上述的`pushViewController:animated:`和...

    iOS 自定义UINavigationController和UITabBarController

    在iOS应用开发中,`UINavigationController`和`UITabBarController`是两个核心的控制器,用于构建常见的用户界面结构。它们分别是导航栈和标签页切换器,但有时开发者可能需要根据应用的需求进行定制,以实现独特的...

    uitabbarcontroller navigationcontroller互相加载导航demo

    在iOS应用开发中,`UITabBarController` 和 `UINavigationController` 是两个非常重要的组件,它们分别用于实现底部标签栏切换和页面的栈式导航。`UITabBarController` 通常用作应用的基础视图控制器,展示多个子...

    自定义UITabBarController的badge的外观

    在iOS应用开发中,`UITabBarController` 是一个非常重要的组件,它用于管理多个子控制器,并在底部展示一个带有图标和可选文字标签的标签栏。`Badge` 是`UITabBarItem` 的一种特性,通常用来显示未读消息或者更新等...

    IOS UITabBarController 使用示例

    在iOS应用开发中,`UITabBarController` 是一个非常重要的组件,它用于创建具有底部标签栏界面的应用。这个组件允许用户在多个视图控制器之间轻松切换,每个标签对应一个不同的功能或内容区域。本篇文章将深入讲解...

    UITabBarController简单demo

    在实际应用中,你可能还需要处理更多细节,如处理不同页面间的交互、添加过渡动画、监听`UITabBarItem`的点击事件等。通过这个简单的demo,你可以理解这两个组件的基本使用方法,并在此基础上扩展出更复杂的导航结构...

    swift-在系统UITabBarController的基础上实现安卓版微信TabBar的滑动切换功能

    在iOS应用开发中,我们经常需要使用到`UITabBarController`来实现底部导航栏的功能,类似于安卓版微信的TabBar。然而,原生的`UITabBarController`并未提供滑动切换子控制器的功能,而是通过点击TabBar上的按钮来...

    ios-自定义UITabBarController,完美的搭建框架,可以直接用在项目中,还有完美的UIwebView.zip

    在iOS应用开发中,UITabBarController是苹果提供的一个标准组件,用于实现底部标签栏的切换效果,方便用户在多个视图控制器间进行导航。然而,系统默认的UITabBarController有时不能满足开发者对于个性化和功能扩展...

    UITabBarController

    4. **选择器事件**: 当用户点击标签时,`UITabBarController`会发送`tabBarController:didSelectViewController:`通知给其代理。通过实现这个代理方法,开发者可以监听并处理标签切换的事件。 5. **自定义动画**: ...

    UITabBarController使用案例

    通常包括初始化`UITabBarController`,配置`TabBarItem`,以及处理选中事件的代码。 综上所述,`UITabBarController`在iOS应用中扮演着导航的重要角色。通过灵活运用上述知识点,我们可以构建出符合需求的底部导航...

    iOS UITabBarController(自定义, tarBar中间有自定义按钮)

    在iOS应用开发中,`UITabBarController` 是一个非常重要的组件,它允许用户在多个视图控制器之间切换,每个视图控制器通常代表应用的一个主要功能。`UITabBar` 是`UITabBarController`的一部分,显示在屏幕底部,...

Global site tag (gtag.js) - Google Analytics