查看边框颜色不变
View border Color not changing
我有一个视图,我用这个 运行 时间属性设置边界:
问题是 layer.borderColor
当我设置 borderColor 时,我的边框消失了,但是当我不设置边框颜色时,我有一个我不想要的黑色边框
有什么想法吗?
您遇到这个问题是因为 layer.borderColor
想要 CGColor
而从 User defined runtime attributes
开始,您只能设置 UIColor
而不是 CGColor
,如果您不想要设置默认颜色 borderColor
即 black
颜色。要设置 borderColor,您需要像这样以编程方式设置它。
Swift 3
yourView.layer.borderColor = UIColor.red.cgColor //set your color here
Swift 2.3 或更低
yourView.layer.borderColor = UIColor.redColor().CGColor //set your color here
除了@NiravD 建议的之外,您还需要在视图的 layer
上同时设置 borderColor
和 borderWidth
才能看到边框。
Swift 3 & Swift 4:
circle.layer.cornerRadius = 5.0
circle.layer.borderColor = UIColor.red.cgColor
circle.layer.borderWidth = 2.0
在 Swift 3.0
@IBOutlet weak var viewMainCell: UIView!
viewMainCell.layer.shadowOpacity = 0.5
viewMainCell.layer.shadowRadius = 5
viewMainCell.layer.shadowColor = UIColor.black.cgColor
viewMainCell.layer.cornerRadius = 5
viewMainCell.layer.masksToBounds = false
我有一个视图,我用这个 运行 时间属性设置边界:
问题是 layer.borderColor
当我设置 borderColor 时,我的边框消失了,但是当我不设置边框颜色时,我有一个我不想要的黑色边框
有什么想法吗?
您遇到这个问题是因为 layer.borderColor
想要 CGColor
而从 User defined runtime attributes
开始,您只能设置 UIColor
而不是 CGColor
,如果您不想要设置默认颜色 borderColor
即 black
颜色。要设置 borderColor,您需要像这样以编程方式设置它。
Swift 3
yourView.layer.borderColor = UIColor.red.cgColor //set your color here
Swift 2.3 或更低
yourView.layer.borderColor = UIColor.redColor().CGColor //set your color here
除了@NiravD 建议的之外,您还需要在视图的 layer
上同时设置 borderColor
和 borderWidth
才能看到边框。
Swift 3 & Swift 4:
circle.layer.cornerRadius = 5.0
circle.layer.borderColor = UIColor.red.cgColor
circle.layer.borderWidth = 2.0
在 Swift 3.0
@IBOutlet weak var viewMainCell: UIView!
viewMainCell.layer.shadowOpacity = 0.5
viewMainCell.layer.shadowRadius = 5
viewMainCell.layer.shadowColor = UIColor.black.cgColor
viewMainCell.layer.cornerRadius = 5
viewMainCell.layer.masksToBounds = false