獲取當前界面顯示的控制器,刷新界面方法:spa
1 採用通知NSNotificationCenter,重複點擊tabBar上按鈕發出通知,全部主題控制器接收通知:代理
在UITabBarDelegate的代理方法中添加通知:get
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item;it
3.3 在主題控制器接收通知io
點擊子類時,self指向子類,也就是子類接收通知方法
3.4 當全部的子類控制器都被點擊時,在點擊TabBar按鈕,全部的子控制器都接收通知,都會刷新數據
3.5 怎麼作到,只讓一個控制器刷新界面?tab
接收通知的主題控制器,只有顯示在屏幕(界面)上的控制器才須要刷新di
3.6 如何判斷控制器是否顯示在屏幕(界面)上view
經過window屬性,若是控制器的view有window屬性,表示當前控制器在窗口上顯示,沒有就沒顯示。
判斷方法以下:
// 在屏幕上控制器的view才須要刷新
if (self.view.window) {
//當前控制器view刷新數據的方法
[self getMesssges];
}