如何删除UIButton和UIView上的特定边框?

时间:2015-11-25 16:50:25

标签: ios xcode swift uiview uibutton

我有一个UIButton和一个UIView,我想删除按钮的底部边框和视图的顶部边框。下图显示了UIButton。当我按下这个UIButton时,UIView将被添加为子视图(如下拉菜单),但我希望按钮和视图相互合并,因此它看起来像" box"。

我知道如何设置边框宽度和颜色:

self.layer.borderWidth = 1
self.layer.borderColor = UIColor(CGColor: "#616366".CGColor).CGColor

但我不知道是否可以删除边界线。希望你们能帮忙 - 谢谢

enter image description here

1 个答案:

答案 0 :(得分:0)

最简单的方法是稍微改变你的布局,而不是将UIView添加为UIButton的子视图,而是将它们作为兄弟姐妹添加到容器视图中,并且在容器视图上绘制边框。

有点像这样:

let button = UIButton(frame: CGRect(x: 0, y: 0, width: 100, height: 44))
button.setTitle("Button", forState: .Normal)
button.titleLabel?.textColor = UIColor.blackColor()

let container = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 44))

container.addSubview(button)
container.frame = button.frame
container.backgroundColor = UIColor.whiteColor()

container.layer.borderWidth = 5
container.layer.borderColor = UIColor.blackColor().CGColor

let added = UIView(frame:CGRect(x: 0, y: 44, width: 100, height: 200))
added.backgroundColor = UIColor.blueColor()

container.addSubview(added)
container.frame.size.height += added.frame.size.height

XCPlaygroundPage.currentPage.liveView = container