kel*_*ikh 1 uibutton ios swift swift2
我一直无法在三个按钮之间设置边框或阴影来显示一些分隔。我尝试在中间按钮的左侧和右侧添加边框或阴影,但只能在一侧获得阴影。任何帮助是极大的赞赏。
我试图让用户获得阴影,但只显示在右侧:
middleButton.layer.backgroundColor = UIColor.whiteColor().CGColor
middleButton.layer.borderColor = UIColor(red: 208/255, green: 208/255, blue: 208/255, alpha: 1.0).CGColor
middleButton.layer.borderWidth = 0.0
middleButton.layer.masksToBounds = false
middleButton.layer.shadowColor = UIColor(red: 208/255, green: 208/255, blue: 208/255, alpha: 1.0).CGColor
middleButton.layer.shadowOffset = CGSizeMake(0.5, 1.0)
middleButton.layer.shadowOpacity = 1.0
middleButton.layer.shadowRadius = 1.0
Run Code Online (Sandbox Code Playgroud)
下面是我当前的视图,其中包含三个按钮,我试图在它们之间添加分隔符:
我在表格单元格中的层次结构:
斯威夫特 3 个回答
您可以为 UIButton 进行扩展
extension UIButton {
func addRightBorder(borderColor: UIColor, borderWidth: CGFloat) {
let border = CALayer()
border.backgroundColor = borderColor.cgColor
border.frame = CGRect(x: self.frame.size.width - borderWidth,y: 0, width:borderWidth, height:self.frame.size.height)
self.layer.addSublayer(border)
}
func addLeftBorder(color: UIColor, width: CGFloat) {
let border = CALayer()
border.backgroundColor = color.cgColor
border.frame = CGRect(x:0, y:0, width:width, height:self.frame.size.height)
self.layer.addSublayer(border)
}
}
Run Code Online (Sandbox Code Playgroud)
然后您可以将其用于任何按钮。
middleButton.addRightBorder(borderColor: UIColor.white, borderWidth: 1.0)
middleButton.addLeftBorder(borderColor: UIColor.white, borderWidth: 1.0)
Run Code Online (Sandbox Code Playgroud)
应该可以正常工作。快乐编码!