2013-04-03 86 views
1

我試圖在調用viewDidLoad方法後立即顯示選擇器視圖。但是,UITabBar會阻止選擇器視圖的某些部分顯示。如何將選取器視圖置於UITabBar的前面? pickerview是一個UIView子類。代碼:UITabBar保持UIPickerView的底部顯示

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    self.pickerView = [[AllPickerView alloc] initWithdelegate:self]; 
    [self.pickerView showInView:self.view]; 

} 

回答

1

可以隱藏標籤欄,同時顯示選擇器視圖或可以使用:

[[UIApplication sharedApplication].keyWindow addSubview:self.pickerView]; 

,或者如果你願意,你可以將其添加在TabBarViewController

[self.tabBarController.view addSubview:...]; or 
[self.tabBarController.tabBar addSubview:...]; 
+0

不是最好的主意。 pickerview阻止頂部導航欄。它保持在頂端。我希望它來自動畫的底部。 –

+0

你可以使用UIView動畫製作任何動畫 –

+0

我添加了更改 –

0

設定框架正確

[self.pickerView setFrame:CGRectMake(0, self.view.frame.size.height-self.pickerView .bounds.size.height, self.pickerView .bounds.size.width, pickerView.bounds.size.height)]; 

編輯:

使用添加子視圖,而不是showInView

[self.view addSubView:self.pickerView]; 
+0

這不起作用。選取器視圖來自視圖的底部。 –

+0

[self.tabBarController.view addSubview:...] pickerview顯示導航欄的頂部布隆塊。 [self.tabBarController.tabBar addSubview:...] pickerview在tabbar子視圖中顯示而不在視圖控制器視圖中顯示。 –

+0

是tabbar工作正常嗎? –