iOS11 自定義tabbar遇到的問題,刪除系統自帶tabbar按鈕

自定義tabber,就是創建自己的tabbar蓋在系統的tabbar上面

//自定義tabbar

GJWTabBar ? *customTabBar = [[GJWTabBar alloc]init];

customTabBar.frame=self.tabBar.bounds;

customTabBar.delegate=self;

[self.tabBar addSubview:customTabBar];

self.customTabBar= customTabBar;

// 刪除系統自動生成的UITabBarButton

- (void)viewWillAppear:(BOOL)animated

{

[super viewWillAppear:animated];

// 刪除系統自動生成的UITabBarButton

for(UIView *child in self.tabBar.subviews) {

if([child isKindOfClass:[UIControl ?class]]) {

[child ? removeFromSuperview];

}

}

}

可是當我運行時候,系統自帶的按鈕依然像蓋在

上面,出現兩個tabbar,之前的ios11以前都沒有這個問題的。

后來發現在-(void)viewDidAppear:(BOOL)animated里面重新調用刪除系統自帶tabbar

就可以了。

以下沒有刪除掉的情況


方法二:隱藏自帶的,創建一個view,來替代。

- (void)viewDidAppear:(BOOL)animated{

? ? [super viewDidAppear:animated];

? ? self.tabBar.hidden = YES; //隱藏自帶的tabBar

? ? for (UIView *child in self.tabBar.subviews) {

? ? ? ? if ([child isKindOfClass:[UIControl class]]) {

? ? ? ? ? ? child.hidden = YES;//隱藏自帶的tabBarButton

? ? ? ? }

? ? }

}



注:不喜勿噴!!!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容