【问题标题】:How do I remove the black border of a textfield?如何删除文本字段的黑色边框?
【发布时间】:2016-06-06 15:53:26
【问题描述】:

我在 IB 中使用以下设置创建了一个文本字段:

  • 边框样式:圆形矩形
  • 视图的背景颜色:黑色,不透明度:15%

结果是该字段的内部是 15%,但有一个非常薄的可见边框不是,我希望将其移除。我试过用这样的代码来做:

textField.borderStyle = UITextBorderStyle.None
textField.layer.cornerRadius = 10
textField.layer.borderColor = UIColor(red:1.0,green:1.0,blue:1.0,alpha:0.15).CGColor

但这只是将边框放在覆盖实际文本字段的内部。

文本域:

【问题讨论】:

    标签: ios swift interface-builder


    【解决方案1】:

    斯威夫特 3 / 斯威夫特 4

    实现无边框文本字段的最简单方法是更改​​文本字段的样式。

    步骤

    1. 对文本字段进行 IBOutlet 引用。
    2. 设置文本字段的 边框样式为无。

    示例代码

    // Reference
    @IBOutlet var tf: UITextField!
    
    override func viewDidLoad() {
        super.viewDidLoad()
    
        // Email TextField: no border
        tf.borderStyle = .none
    }
    

    结果

    【讨论】:

      【解决方案2】:

      尝试添加这个:

      textField.layer.borderWidth = 0
      

      另外,从截图来看,textField.layer.cornerRadius = 10 似乎被忽略了,请确保您的textField 属性连接到实际的UITextField

      【讨论】:

      • 在截图中我没有使用代码,只是 IB 的东西
      • 您应该能够仅使用 textField.borderStyle = UITextBorderStyle.None 删除边框。您可以在应用程序运行时发布 TextField 的屏幕截图吗?
      • 是的,我知道,但这会删除所有内容,我只是想删除薄的外边框
      • 你不能在borderStyle设置为RoundedRect的情况下移除它。
      【解决方案3】:

      Swift3

      passwordTF.layer.borderColor = UIColor.clear.cgColor
      

      对我来说它的工作以及

      mobileNumberTF.borderStyle = .none
      

      【讨论】:

        【解决方案4】:

        我已经尝试了几种通过编程方式和其他建议的方式来删除 broder 的方法,但后来发现这是从 UITextField 中删除边框的唯一方法。只需在界面生成器中选择边框样式选项

        【讨论】:

          【解决方案5】:

          试试这个

          self.nameTextField.borderStyle = UITextBorderStyleNone;

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2019-11-17
            • 1970-01-01
            • 1970-01-01
            • 2015-07-09
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多