iOS 点击tabbarItem滚到顶部

在很多APP中,我们可以看到当我们处在某一个根控制器中点击了该tabbarItem时,该控制器中的scrollView会滚动到顶部,那么,具体是怎么实现的呢?其实很简单!

首先:在tabbarController中:

1,设置属性lastClickIndex,并在viewDidLoad中给初始值(通常是0,根据你自己的app首先显示的是哪一个决定);

2,- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item;在这一方法中NSInteger index = [self.tabBar.items indexOfObject:item]; 获取当前点击的index;

3,判断lastClickIndex是否跟index相等:(相等----发送通知),(不相等----赋值lastClickIndex = index); 


iOS 点击tabbarItem滚到顶部_第1张图片

4,控制器中接收通知,并实现滚动到最上面!



双击滑动到顶部


当然,自己体验一下,单击就滑动到顶部确实用户体验不怎么好!有可能用户不小心点到了就直接到顶部了那就尴尬了,因此,我们更多的还是双击tabbarItem才滑动到顶部的!

下面来实现双击滑动到顶部!当然我也是在上面单击的基础上改进的,直接贴代码吧!


iOS 点击tabbarItem滚到顶部_第2张图片
双击tabbarItem主要代码

可以看到,无非就是再次加一个点击记录(thirdClickIndex)的属性,同时记录两次点击的时间并进行比较时间间隔然后以做通知处理!

你可能感兴趣的:(iOS 点击tabbarItem滚到顶部)