2012-04-23 29 views
4
- (IBAction)textFieldDoneEditing:(id)sender { 
    [sender resignFirstResponder]; 
    [sender becomeFirstResponder]; 
} 

我有一個UItextField對象,並將「退出後結束」鏈接到「textFieldDoneEditing」動作。按下鍵盤上的完成按鈕後,爲什麼會被解除?使textfield再次成爲第一響應者

在上面的代碼
+1

什麼是下一行 – 2012-04-23 09:08:00

+0

鍵盤加脂開放的目的[發件人resignFirstResponder];將辭職的文本字段。我不知道爲什麼你同時調用[sender resignFirstResponder]; [sender becomeFirstResponder];你想在這個功能裏面做什麼? – mChopsey 2012-04-23 09:08:37

+0

其實我發現當textfield成爲第一響應者時鍵盤並不總是出現。當文本字段是第一響應者並且鍵盤被解散時,我怎麼能再次在屏幕上獲得鍵盤? – 2012-04-23 09:15:13

回答

3

在你的方法調用像婁代碼

yourViewController.h文件

只是定義波紋管方法

-(void)MykeyBoardUp; 

和.m文件

-(void)MykeyBoardUp{ 
     [yourtextFieldobject becomeFirstResponder]; 
} 

另一種方法則後您的.m文件在波紋管方法中,就像這樣調用這個方法

- (IBAction)textFieldDoneEditing:(id)sender { 
    [sender resignFirstResponder]; 
    [self performSelector:@selector(MykeyBoardUp) withObject:nil afterDelay:0.2]; 
} 

願這幫助你......

1

,當您運行[sender resignFirstResponder]鍵盤會隱藏 所以調用下一個方法是沒有用的

的,但如果你仍然想再次獲得小鍵盤,使用UITextField對象調用它 即

如果.H

IBOulet UITextField *txt;

然後調用 [txt becomeFirstResponder]

但我還是不明白,你的目的是什麼。

相關問題