需求
類似咸魚那樣中間凸起或者中間自定義圖像的tabbar層出不窮,我就想到在tabbar上加小紅點這個功能.簡單來說就是直接拿一個image蓋上不就完事了么...,欺騙用戶應(yīng)該習(xí)以為常了?
效果圖

切圖借來一用
實現(xiàn)
首先@interface ViewController : UITabBarController,因為大部分工作storyboard都做了,所以代碼部分只剩添加中間突出按鈕.

tabbarItem設(shè)置(中間item除外)

中間item設(shè)置title=@""的,其他不用管
處理中間按鈕:在這的分兩種情況處理:
1:中間tabbarItem只是樣式凸起,扔有相應(yīng)的自控制器與之對應(yīng),則不需要處理中間button的相應(yīng),直接 button.userInteractionEnabled = NO;,讓初始的item響應(yīng)即可;
2:還拿咸魚來說,中間item并非只是ui凸起,controller需要自定義,則直接設(shè)置button點擊事件,被覆蓋的item則不響應(yīng),對應(yīng)的子控制器也就浪費了....
添加button代碼:

button初始化拿開的話代碼少的可憐
注意:storyboard設(shè)置tabbarItem image的時候,點擊圖標(biāo)會變藍(lán)問題,需在NavigationController里添加原圖控制即可.

NavigationController
以上就是全部代碼了.