2012-12-18 68 views
-1

我試圖在Storyboard上實現UIDatePicker。正如你所期望的那樣,當視圖第一次加載時,日期選擇器不能在屏幕上顯示,所以我必須編寫自定義代碼以便在加載時將其從屏幕上移開。這裏是代碼...iOS:隱藏UIView對象

- (void)hideDatePicker 
{ 
    CGRect newRect = self.datePicker.frame; 
    CGPoint newOrigin = CGPointMake(0, [[UIScreen mainScreen] bounds].size.height); 
    newRect.origin = newOrigin; 

    self.datePicker.frame = newRect; 
} 

我目前在viewDidLoad中調用此方法。

當我運行應用程序,日期選擇器仍然在屏幕的底部,令人作嘔佔據半個屏幕...

+0

什麼是self.datePicker當你這樣做。也許你忘了將picker鏈接到你的代碼和self.datePicker == nil。 – onevcat

+0

不要在viewDid Load中調用它:如果你想稍後加載它。可以在按鈕操作上調用該方法或隱藏它,然後使其隱藏。 – Divya

回答

1

您可能要實現它的UIActionSheet,一個不那麼困難和優雅的解決方案內。看看這個問題,它會給你一個簡要的解釋和必要的代碼。 Add UIPickerView & a Button in Action sheet - How?

+0

黨,甚至不知道這個UI元素存在......謝謝! – brianSan

1

-viewDidLoad:你不能確保所有IBOutlets被實例化,所有幾何集合,所以如果您使用任何幾何變換,最好在-view[Will/Did]Appear:中調用您的方法。 而且它更容易隱藏與hidden財產

yourView.hidden = YES;