如何将文本编程到文本字段中?

How do I program text into textfield?

我正在使用 Xcode 6.3 和 Objective-C 语言。我正在构建的应用程序有 UITextFieldUITextView。我想让文本显示在 fields/views 中,以便用户可以得到有关将什么内容放入 fields/views 的说明。例如,"enter your name"。我该怎么做?

您可能正在寻找 placeholder 属性。

let t = UITextField()
t.placeholder = "enter your name"

文本字段的占位符是显示某些文本的方式...

textField.placeholder  = "Enter your name"

如果您想更改文本,只需致电:

textfield.text = @"enter your name"

如果你只是想设置一个占位符,它会在用户输入时消失,使用这个 属性 :

textfield.placeholder = @"enter your name"

如果您想要列表说明,请在适当的位置添加/放置一个 UIView,并在您的 textFieldDidBeginEditing: 委托方法中显示和隐藏。

注意:- 占位符可能不合适,因为它对文本有限制并且您的说明可能很大。

UITextField:

对于您的UITextField,您应该定义说明文本的占位符。

_textField.placeholder= @"Your Name";

UITextView :

UITextView 没有像 UITextField 这样的默认占位符。 但是您可以按照以下步骤制作类似占位符的效果。

- (void)viewDidLoad {
    [super viewDidLoad];

    _textView.text = @"Enter Comment...";
    _textView.textColor = [UIColor lightGrayColor];
    _textView.delegate = self;
}

- (void)textViewDidBeginEditing:(UITextView *)textView
{
    if ([textView.text isEqualToString:@"Enter Comment..."]) {
        textView.text = @"";
        textView.textColor = [UIColor blackColor];
    }
    [textView becomeFirstResponder];
}

- (void)textViewDidEndEditing:(UITextView *)textView
{
    if ([textView.text isEqualToString:@""]) {
        textView.text = @"Enter Comment...";
        textView.textColor = [UIColor lightGrayColor];
    }
    [textView resignFirstResponder];
}