UITextField 繼承 UIControl 類,只支持單行輸入和顯示,可輸入密碼類型。支持實現代理 UITextFieldDelegate
名稱 | 類型 | 說明 | 默認值 |
---|---|---|---|
text | NSString | 文本輸入值 | |
textColor | UIColor | 文本顏色 | |
UIFont | UIFont | 文本大小 | |
textAlignment | NSTextAlignment | 文本方向 | NSLeftTextAlignment |
borderStyle | UITextBorderStyle | 邊框風格 | UITextBorderStyleNone |
placeholder | NSString | 提示文本 | |
clearsOnBeginEditing | BOOL | 開始編輯時候清空內容 | NO |
adjustsFontSizeToFitWidth | BOOL | 以寬度自動調整字體大小 | NO |
background | UIImage | 背景 | |
clearButtonMode | UITextFieldViewMode | 設置何時顯示清除按鈕 | UITextFieldViewModeNever |
leftView | UIView | 左邊視圖 | |
rightView | UIView | 右邊視圖 | |
inputView | UIView | 響應輸入時候顯示的視圖 | |
leftViewMode | UITextFieldViewMode | 設置何時顯示左邊視圖模式 | UITextFieldViewModeNever |
rightViewMode | UITextFieldViewMode | 設置何時顯示右邊視圖模式 | UITextFieldViewModeNever |
- (BOOL)endEditing:(BOOL)force;
是否強制取消當前輸入行爲##### 代理協議函數函數
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField;
當開始編輯前,返回NO能夠阻止編輯- (void)textFieldDidBeginEditing:(UITextField *)textField
當編輯輸入結束觸發(BOOL)textFieldShouldEndEditing:(UITextField *)textField
結束編輯前,返回NO能夠阻止編輯結束(void)textFieldDidEndEditing:(UITextField *)textField
編輯結束- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
當輸入內容發生改變觸發,range表示改變位置和長度。返回NO可阻止改變- (void)textFieldDidChangeSelection:(UITextField *)textField
輸入內容發生改變後觸發,IOS13支持。- (BOOL)textFieldShouldClear:(UITextField *)textField
當內容發生清除觸發,返回NO阻止清除(BOOL)textFieldShouldReturn:(UITextField *)textField
當按下回車鍵觸發,返回NO可阻止默認行爲參考代碼字體
UITextField* _textField = [[UITextField alloc] init]; // 設置位置 _textField.frame = CGRectMake(50, 100, 300, 60); // 設置圓角邊框風格 _textField.borderStyle = UITextBorderStyleRoundedRect; // 設置值 _textField.text = @""; // 設置提示語 _textField.placeholder = @"請輸入用戶名"; // 設置鍵盤類型 _textField.keyboardType = UIKeyboardAppearanceDefault; // 設置代理 _textField.delegate = self; // 設置是否爲密碼類型 _textField.secureTextEntry = NO; UITextField* _passwdText = [[UITextField alloc] init]; _passwdText.frame = CGRectMake(50, 200, 300, 60); _passwdText.borderStyle = UITextBorderStyleRoundedRect; _passwdText.placeholder = @"請輸入密碼"; _passwdText.keyboardType = UIKeyboardAppearanceDefault; _passwdText.secureTextEntry = YES; [self.view addSubview:_textField]; [self.view addSubview:_passwdText];