2017-03-28 94 views
0

我試圖在我的第二個TabBarController上不包含我的導航欄和TabBar時創建一個UIView覆蓋圖,上面寫着「Loading data ..」。用NavBar和TabBar覆蓋collectionViewController上的UIView

我現在有這個作爲我的代碼

UIView *overlayView = [[UIView alloc] initWithFrame:self.navigationController.view.frame]; 

overlayView.backgroundColor = [UIColor blackColor]; 
overlayView.alpha = 0.4; 
overlayView.tag = 88; 

UILabel *message = [[UILabel alloc] initWithFrame:self.navigationController.view.frame]; 
[message setFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:20.0f]]; 
message.text = @"Loading data..."; 
message.textColor = [UIColor whiteColor]; 
message.textAlignment = NSTextAlignmentCenter; 
message.tag = 99; 

[self.navigationController.view addSubview:overlayView]; 
[self.navigationController.view addSubview:message]; 

目前的消息是工作不錯,但UIView的疊加覆蓋我的TabBar?你能幫我解決這個問題嗎?

要清除它:我想以編程方式顯示一個UIView疊加,它不覆蓋navBar和tabBar。

謝謝,歡呼!

+0

你想要一個黑色的覆蓋層,不包括導航和標籤欄嗎? –

+0

正確@HirenPatel – EdSniper

回答

1

您需要在ViewController上添加您的視圖,以便它不會涵蓋NavigationBarTabBar

[self.view addSubview:overlayView]; 
[self.view addSubview:message]; 

根據當前視圖設置框架。

希望這將有助於覆蓋全屏。

+0

嗨,我問這個相反,我不希望我的NavigationBar和TabBar被覆蓋.. – EdSniper

+0

因此,你必須將它添加到你的視圖控制器。 – CodeChanger

+0

您能否詳細說明或編輯您的答案? – EdSniper