关于tabbar再次点击刷新那些

刚好在做项目的时候 发现有很多APP有tabbar再次点击刷新的功能,其中“腾讯新闻”的做的效果最好,于是网上查了点资料,但是大都是 复制-粘贴的模式,而且有各种不清不楚的问题,于是自己随便写了下,自己的思路

1.在AppDelegate.h中添加一个属性用来标记tabbar上次的点击(大部分的项目最后都是在AppDelegate设置UITabBarController为根控制器)

/**    标记tabbar上次的点击 并且赋初值 小于0的都可以  我这里是赋初值为-1 */

@property (nonatomic, assign)NSInteger index;
2.设置UITabBarController的代理UITabBarControllerDelegate为AppDelegate

3.代理方法中处理

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController
{
    //1.先判断当前点击的index是否与标记的相等(所以初值 self.index = -1 了巧妙的实现了再次点击的功能)
    if (self.index == tabBarController.selectedIndex) {
        //2.通过发通知,交给响应的控制器去做具体的操作,传入self.index是为了具体区分标记做判断
        [[NSNotificationCenter defaultCenter] postNotificationName:@"再次点击了" object:@(self.index)];
    }
    //3.再把点击的index赋值给标记的self.index

    self.index = tabBarController.selectedIndex;
   
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值