One:###
在 AppDelegate.m
文件中遵从 UITabBarControllerDelegate
协议,并让根控制器成为代理,同时声明一个全局变量@property (nonatomic, assign) NSUInteger lastSelectedIndex;
记录上一次点击的索引, 并实现以下方法
- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController
{
if (tabBarController.selectedIndex == self.lastSelectedIndex) {
[[NSNotificationCenter defaultCenter] postNotificationName:@"注册的通知名字" object:nil];
}
self.lastSelectedIndex = tabBarController.selectedIndex;
}
Two:###
来到你要实现该功能的控制器页面 在viewDidLoad
方法里面注册通知
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refresh) name:@"注册的通知名字" object:nil];
- (void)refresh
{
// 进行下拉刷新
[self.tableView.mj_header beginRefreshing];
}
最后再移除掉通知
- (void)dealloc
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
}