如何将UITextView的边框设置为与UITextField的边框颜色相同

n17*_*911 42 uitextview ios swift

默认情况下,UITextField的边框颜色为浅灰色.我想将我的UITextView设置为与UITextField具有相同的边框颜色.

我试过了:

myTextView.layer.borderColor = UIColor.lightGrayColor().CGColor
or
myTextView.layer.borderColor = UIColor.lightTextColor().CGColor
or 
myTextView.layer.borderColor = myTextField.layer.borderColor
Run Code Online (Sandbox Code Playgroud)

他们仍然有不同的颜色.你能告诉我如何看到UITextView边框以匹配UITextField颜色吗?

谢谢.

Dee*_*pak 62

试试这个代码.

UIColor *borderColor = [UIColor colorWithRed:204.0/255.0 green:204.0/255.0 blue:204.0/255.0 alpha:1.0];

myTextView.layer.borderColor = borderColor.CGColor;
myTextView.layer.borderWidth = 1.0;
myTextView.layer.cornerRadius = 5.0;
Run Code Online (Sandbox Code Playgroud)

更改borderWidth和cornerRadius值以获得与UITextField完全相同的ui.

  • 我使用.5的边框宽度来获得iPad mini上我的屏幕上另一个条目的精确外观. (6认同)
  • 在Mac中有一个名为DigitalColor Meter的实用程序.使用该实用程序获取文本字段的精确RGB.您只需将光标拖到UITextField边框上即可. (2认同)

Aks*_*Aks 29

此Swift代码也适用于设置相同的边框颜色,宽度和半径UITextField:

myTextView.layer.borderColor = UIColor(red: 0.9, green: 0.9, blue: 0.9, alpha: 1.0).CGColor
myTextView.layer.borderWidth = 1.0
myTextView.layer.cornerRadius = 5
Run Code Online (Sandbox Code Playgroud)


Jas*_*ady 14

我对iOS 10有类似的问题,并且无法找到答案,但这是我在Utilities和iOS模拟器中使用数字色度计找到的.

Swift 3/iOS 10

let color = UIColor(red: 186/255, green: 186/255, blue: 186/255, alpha: 1.0).cgColor
myTextView.layer.borderColor = color
myTextView.layer.borderWidth = 0.5
myTextView.layer.cornerRadius = 5
Run Code Online (Sandbox Code Playgroud)


ing*_*nti 6

swift 4.x/ios11.

我使用模拟器在PSD中做了另一个测量.我可以确认半径是0.5,颜色是0.8,因为205/255 = 0.8(或者HEX中的"cdcdcd",如PSD所示,但是宽度必须是0.5.(我附加了一个PSD,您可以在其中比较编辑字段的半径(UITExtField) )和半径应用于UITextView.

所以它是正确的:

    let borderGray = UIColor(red: 0.8, green: 0.8, blue: 0.8, alpha: 1)
    self.TxtV.layer.borderColor = borderGray.cgColor
    self.TxtV.layer.borderWidth = 0.5
    self.TxtV.layer.cornerRadius = 5
Run Code Online (Sandbox Code Playgroud)

注意:我试图从View上的TextField获取颜色,但我得到了:

如果让borderGray = self.cellPhoneTxt.layer.borderColor {let BG = UIColor(cgColor:borderGray)

    print(BG)
    var red: CGFloat = 0
    var green: CGFloat = 0
    var blue: CGFloat = 0
    var alpha: CGFloat = 0
    BG.getRed(&red, green: &green, blue: &blue, alpha: &alpha)
    print(red, green, blue, alpha)

}
Run Code Online (Sandbox Code Playgroud)

但我进入了控制台:

kCGColorSpaceModelRGB 0 0 0 1

0.0 0.0 0.0 1.0

所以看来Apple正在使用全黑和一些Alpha.

在此输入图像描述