How can I set right, left, top and bottom border with color on UITableview in swift?
Thanks,
Try this for full border:
yourtable.layer.masksToBounds = true yourtable.layer.borderColor = UIColor( red: 153/255, green: 153/255, blue:0/255, alpha: 1.0 ).CGColor yourtable.layer.borderWidth = 2.0 This is for bottom border:
let border = CALayer() let width = CGFloat(2.0) border.borderColor = UIColor.darkGrayColor().CGColor border.frame = CGRect(x: 0, y: yourtable.frame.size.height - width, width: yourtable.frame.size.width, height: yourtable.frame.size.height) border.borderWidth = width yourtable.layer.addSublayer(border) yourtable.layer.masksToBounds = true extension UIView { func addBorderTop(size size: CGFloat, color: UIColor) { addBorderUtility(x: 0, y: 0, width: frame.width, height: size, color: color) } func addBorderBottom(size size: CGFloat, color: UIColor) { addBorderUtility(x: 0, y: frame.height - size, width: frame.width, height: size, color: color) } func addBorderLeft(size size: CGFloat, color: UIColor) { addBorderUtility(x: 0, y: 0, width: size, height: frame.height, color: color) } func addBorderRight(size size: CGFloat, color: UIColor) { addBorderUtility(x: frame.width - size, y: 0, width: size, height: frame.height, color: color) } private func addBorderUtility(x x: CGFloat, y: CGFloat, width: CGFloat, height: CGFloat, color: UIColor) { let border = CALayer() border.backgroundColor = color.CGColor border.frame = CGRect(x: x, y: y, width: width, height: height) layer.addSublayer(border) } } I am going to open source my extension classes at some point.
Edit: Here you go, I update the functions in here https://github.com/goktugyil/EZSwiftExtensions
CGRect argument for the border's frame, then use it to create the border layer and add it as a sublayer.addBorderTop