簡體   English   中英

UiTextField和resignFirstResponder

[英]UiTextField and resignFirstResponder

我有一個奇怪的設置。

我有一個名為View1View和一個ViewController調用viewController1

IBView1ViewController1的子代。

View1中 ,我使用代碼UITextField創建並添加為子視圖。

在我的Viewcontroller ,我有viewController1 : UIViewController <UITextFieldDelegate>

現在..我想在View1中的文本字段獲得鍵盤中的“完成”按鈕時重新簽名鍵盤,所以我有

- (BOOL)textFieldShouldReturn:(UITextField *)TEXTFIELD {
    [TEXTFIELD resignFirstResponder];
}

現在的問題是,如何在TEXTFIELD(在我的viewcontroller中定義)和我的View中定義的文本字段之間建立連接?

我是否必須在interfaceBuilder中執行某些操作?

也許我完全不在這里......

一些提示非常感謝

肯德爾是對的。 您需要將viewController1設置為文本字段的委托。

在上面的評論中,我認為你誤解了textFieldShouldReturn方法。 UITextField *作為參數傳遞給此方法,以便委托可以查看要返回的字段,並決定是否允許它。 在您的情況下,您只有一個文本字段,所以只需重新簽署第一個響應者並返回YES(我的代碼在下面)。

嘗試在此textFieldShouldReturn函數上放置斷點。 它被叫了嗎?

- (BOOL)textFieldShouldReturn:(UITextField*)aTextField
{
    [aTextField resignFirstResponder];
    return YES;
}

將文本字段的delegate屬性連接到IB中的視圖控制器(應該是該視圖的文件所有者)。 還要在視圖控制器標題中注明您符合協議。

或者您可以在視圖控制器的viewDidLoad方法中將texfield.delegate屬性設置為self。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM