【问题标题】:UITextField, set placeholder after text in iosUITextField,在ios中的文本后设置占位符
【发布时间】:2016-03-14 07:28:47
【问题描述】:

我需要在文本之后保留占位符,当单击文本框时,我只需要清除占位符并能够输入字符。

在此 Marissa 中是名称文本,而 (First Name) 是占位符。一旦我开始编辑占位符,需要清除并开始编辑完整的文本。

我怎样才能做到这一点?

【问题讨论】:

  • 您应该使用标签来显示占位符,当用户单击时隐藏占位符并检查文本是否不为零,然后进行相应操作

标签: ios objective-c uitextfield


【解决方案1】:

我在下面的 URL 中找到了一些类似的自定义文本字段。如果你觉得这个合适,你可以使用它。

TUTORIAL / SOURCE

【讨论】:

    【解决方案2】:

    请参考以下代码。

    只需将下面的代码复制粘贴到viewdidload()

    textfield.attributedPlaceholder = [[NSAttributedString alloc] initWithString:[NSString stringWithFormat:@"Yourtext%@",Placehodertext] attributes:@{NSForegroundColorAttributeName: color}];
    

    UITextfield 的代表分配给self

    textfield.delegate =  self
    
    
    -(BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
       textfield.text = @"Yourtext"
       return YES;
    }
    

    【讨论】:

      【解决方案3】:

      您不能将占位符与文本字段中的文本一起设置。 但是有一个替代方案。 Textfields 有一个叫做左视图的东西,您可以将其设为只读视图。 试试这个:

      UIView *paddingView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 30, 30)];
      UILabel *textLabel = [[UILabel alloc] initWithFrame:paddingView.bounds];
      textLabel.text = @"Marissa";
      [paddingView addSubView:textLabel]; 
                      textField.leftView = paddingView;
                      textField.leftViewMode = UITextFieldViewModeAlways;
      

      【讨论】:

        【解决方案4】:

        第 1 步: 使文本归档属性表单xib 并设置“玛丽莎(名字)” 并将 (First Name) 的颜色更改为灰色。

        第 2 步: 并在 Textfiled DidBiginEditing 方法中将 textField.text 更改为“Marisa”。

        【讨论】:

          【解决方案5】:

          这可以通过多种方式实现:

          1. 使用UITextField 实例的attributedText 属性为文本的不同部分应用样式。每次用户使用delegate methods 或观察UIControl Control Events 更改输入时,您都需要在此处正确定义属性。

          2. 如果文本输入的结构是固定和预定义的,您可以使用一批字段来模仿更复杂/智能的字段。例如,在这里,您需要在旁边放置两个字段。一个用于姓氏,第二个用于名字。或者,如果其中一个部分不可编辑,您可以使用 UILabelUITextField 的组合。这种方法允许您根据需要配置复杂字段的单独部分:不同的占位符、字体、键盘样式等。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2014-06-03
            • 2013-09-12
            • 1970-01-01
            • 2023-03-12
            • 2019-06-22
            • 2020-01-06
            • 2015-12-21
            相关资源
            最近更新 更多