2010-04-16 85 views
5

我有一個要求,我在視圖中有一個文本框。當我想通過切換選項卡(TabBased Application)來打開視圖時,第一次加載視圖時會出現鍵盤,因爲我調用了loadview方法。但是當我切換到tab2並再次切換到tab1時,不會調用加載視圖。我想每次打開tab1頁面時都會出現鍵盤。如何在視圖已經加載時顯示鍵盤來打開視圖?

回答

10

使用-viewWillAppear:在您的視圖控制器發送您的文本字段-becomeFirstResponder消息,例如:

- (void) viewWillAppear:(BOOL)animated { 
    [super viewWillAppear:animated]; 
    [myTextField becomeFirstResponder]; 
} 
+0

我也做了同樣的事情......但viewWillAppear中的方法不叫每次...... 代碼如下: - (void)viewWillAppear:(BOOL)animated {super viewWillAppear:animated]; \t [searchForProduct becomeFirstResponder]; } 請幫忙 – 2010-04-16 07:01:18

+1

你的代碼應該工作,假設所有的對象都被實例化和連接起來。嘗試添加一個'NSLog'語句來驗證'-viewWillAppear:'被調用。另外請確保'searchForProduct'不是'nil'和/或如果您爲視圖使用Interface Builder,則它正確連接。 – 2010-04-16 07:34:49

+0

searchForProduct沒有發佈..它包含內存分配...問題是viewWillAppear方法永遠不會被調用... – 2010-04-16 07:45:04

相關問題