2011年2月22日 星期二

[iOS Dev] 自動出現鍵盤並延遲出現 UIKeyboard auto show and delay

我在弄一個功能, 從 MainViewController 換到SecondViewController後, 自動顯示鍵盤

本來是寫在ViewDidLoad裡, 讓鍵盤自動跑出來

- (void)viewDidLoad {
    [self.textField becomeFirstResponder];
    [super viewDidLoad];
}

但是這樣換頁動畫還沒完, 鍵盤會同時蹦出來, 我想要的是畫面Load完, 鍵盤再從下面蹦出來

所以用了另一種方法如下:

- (void)enableKeyboard {
 [self.textField becomeFirstResponder];
}

- (void)viewDidLoad {
    [self performSelector:@selector(enableKeyboard) withObject:nil afterDelay:.3]; 
    [super viewDidLoad];
}

這樣子就可以在viewDidLoad之後延遲0.3秒再顯示鍵盤, 我的換頁動畫設定0.3秒, 所以延遲也設0.3秒, 這樣動畫顯示完會恰恰好蹦出來
Related Posts Plugin for WordPress, Blogger...