最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS開發(fā)中TabBar再次點擊實現(xiàn)刷新效果

 更新時間:2018年04月26日 08:54:04   投稿:mrr  
這篇文章主要介紹了iOS開發(fā)中TabBar再次點擊實現(xiàn)刷新效果,實現(xiàn)方法也很簡單,需要的朋友可以參考下

需求

之前已經實現(xiàn)了自定義TabBar,如圖所示:

 

自定義TabBar.jpeg

現(xiàn)在需要實現(xiàn)一個類似今日頭條TabBar的功能 —— 如果繼續(xù)點擊當前TabBar的選中項,那么該界面需要刷新UITableView。

分析

既然已經自定義了TabBar,那么最簡單的就是在自定義中給TabBar中需要的UITabBarButton添加事件 —— 點擊就發(fā)送通知,并且將當前的索引傳出去。對應的界面監(jiān)聽通知,拿到索引比對,如果和當前索引一致,就執(zhí)行對應的操作。

實現(xiàn)

1. 自定義TabBar的layoutSubviews中綁定事件

- (void)layoutSubviews
{
 [super layoutSubviews];
 for (UIButton * tabBarButton in self.subviews) {
  if ([tabBarButton isKindOfClass:NSClassFromString(@"UITabBarButton")]) {
   //監(jiān)聽tabbar的點擊
   //綁定tag 標識
   tabBarButton.tag = index;
   //監(jiān)聽tabbar的點擊
   [tabBarButton addTarget:self action:@selector(tabBarButtonClick:) forControlEvents:UIControlEventTouchUpInside];
  }
 }
}

2. 監(jiān)聽事件,發(fā)送通知

- (void)tabBarButtonClick:(UIControl *)tabBarBtn{
 
 //判斷當前按鈕是否為上一個按鈕
 //再次點擊同一個item時發(fā)送通知出去 對應的VC捕獲并判斷
 if (self.previousClickedTag == tabBarBtn.tag) {
  
  [[NSNotificationCenter defaultCenter] postNotificationName:
   @"DoubleClickTabbarItemNotification" object:@(tabBarBtn.tag)];
 }
 self.previousClickedTag = tabBarBtn.tag;
}

對應的UIViewController監(jiān)聽通知

- (void)viewDidLoad {
 [super viewDidLoad];
 [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(doubleClickTab:) name:@"DoubleClickTabbarItemNotification" object:nil];
}

3. 監(jiān)聽到通知,比對后執(zhí)行操作

-(void)doubleClickTab:(NSNotification *)notification{
 //這里有個坑 就是直接用NSInteger接收會有問題 數(shù)字不對
 //因為上個界面?zhèn)鬟^來的時候封裝成了對象,所以用NSNumber接收后再取值
 NSNumber *index = notification.object;
 if ([index intValue] == 1) {
  //刷新
 }
}

最終的效果請看:

總結

以上所述是小編給大家介紹的iOS開發(fā)中TabBar再次點擊實現(xiàn)刷新效果,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

相關文章

  • IOS 單擊手勢的添加實現(xiàn)代碼

    IOS 單擊手勢的添加實現(xiàn)代碼

    這篇文章主要介紹了IOS 單擊手勢的添加實現(xiàn)代碼的相關資料,需要的朋友可以參考下
    2017-05-05
  • Apple?Watch?App?Lifecycle應用開發(fā)

    Apple?Watch?App?Lifecycle應用開發(fā)

    這篇文章主要為大家介紹了Apple?Watch?App?Lifecycle應用開發(fā)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10
  • IOS使用TestFlight測試的使用方法

    IOS使用TestFlight測試的使用方法

    TestFlight是iOS系統(tǒng)上用來測試軟件的,打開了這個APP就相當于打開了新世界的大門,這個APP直接可以改變你對IOS系統(tǒng)封閉的看法,讓你擁有媲美安卓用戶的更多自主權!
    2022-12-12
  • 詳解iOS多線程GCD的使用

    詳解iOS多線程GCD的使用

    Grand Central Dispatch (GCD)是Apple開發(fā)的一個多核編程的解決方法,本文給大家詳細介紹IOS中GCD的使用,需要的朋友參考下
    2016-03-03
  • iOS中利用CoreAnimation實現(xiàn)一個時間的進度條效果

    iOS中利用CoreAnimation實現(xiàn)一個時間的進度條效果

    在iOS中實現(xiàn)進度條通常都是通過不停的設置progress來完成的,這樣的進度條適用于網絡加載(上傳下載文件、圖片等)。下面通過本文給大家介紹iOS中利用CoreAnimation實現(xiàn)一個時間的進度條,需要的的朋友參考下吧
    2017-09-09
  • iOS應用腳本重簽名的實現(xiàn)方法

    iOS應用腳本重簽名的實現(xiàn)方法

    這篇文章主要介紹了iOS應用腳本重簽名的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-01-01
  • iOS App開發(fā)中擴展RCLabel組件進行基于HTML的文本布局

    iOS App開發(fā)中擴展RCLabel組件進行基于HTML的文本布局

    RCLabel組件基于CoreText框架,可以將HTML標記的文本內容轉為富文本視圖,這里我們就來解讀如何在iOS App開發(fā)中擴展RCLabel組件進行基于HTML的文本布局:
    2016-07-07
  • iOS中關于信鴿推送的使用demo詳解

    iOS中關于信鴿推送的使用demo詳解

    這篇文章主要介紹了iOS中關于信鴿推送的使用demo詳解,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-09-09
  • iOS逆向開發(fā)之微信自動添加好友功能

    iOS逆向開發(fā)之微信自動添加好友功能

    這篇文章主要介紹了iOS逆向開發(fā)之微信自動添加好友功能,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-04-04
  • 淺談iOS 屏幕方向那點事兒

    淺談iOS 屏幕方向那點事兒

    這篇文章主要介紹了淺談iOS 屏幕方向那點事兒,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07

最新評論

萨嘎县| 海淀区| 涞源县| 庆城县| 辽宁省| 本溪市| 高要市| 诏安县| 黄龙县| 龙胜| 星子县| 郁南县| 广东省| 沽源县| 兴海县| 渑池县| 雷波县| 衡山县| 图木舒克市| 海淀区| 北辰区| 乌兰察布市| 绍兴市| 华坪县| 金阳县| 隆化县| 临桂县| 咸宁市| 海淀区| 沅江市| 遂平县| 乐清市| 陈巴尔虎旗| 隆林| 江安县| 裕民县| 桃园市| 休宁县| 吐鲁番市| 乡宁县| 蕲春县|