iOS关于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;
}

 

人已赞赏
iOS文章

iOS UILabel高度自适应终结篇

2020-2-24 18:56:44

iOS文章

ios应用申请加急审核那些事

2020-2-24 20:57:55

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索