在 Swift
中,如何更改所选索引的色调不透明度,而不是整个控件的边框?
这会改变整个控件的颜色和不透明度:
sessionTypeSegmentedControl.tintColor = UIColor(red: 140/255, green: 140/255, blue: 140/255, alpha: 0.1)
接着是我试过的:
sessionTypeSegmentedControl.layer.borderColor = UIColor(red: 0/255, green: 0/255, blue: 0/255, alpha: 1.0).cgColor
但这对边界没有影响。
编辑:
我想更改此图像中显示的蓝色背景颜色的不透明度。在最左边。
http://i.stack.imgur.com/GgUwN.png
所以预期的结果是:
最佳答案
我找到了这个解决方案...Swift 3 Xcode 8
@IBAction func valueChanged(_ sender: UISegmentedControl) {
for (index,element) in segment.subviews.enumerated() {
if index != sender.selectedSegmentIndex {
element.tintColor = UIColor.red
element.alpha = 0.5
}else {
element.tintColor = UIColor.red
element.alpha = 1
}
}
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
for (index,element) in segment.subviews.enumerated() {
if index != segment.selectedSegmentIndex {
element.tintColor = UIColor.red
element.alpha = 0.5
}else {
element.tintColor = UIColor.red
element.alpha = 1
}
}
segment.layer.cornerRadius = 5
segment.layer.borderColor = UIColor.black.cgColor
segment.layer.borderWidth = 1
segment.clipsToBounds = true
}
关于ios - 分段控制,改变色调不透明度,但不改变边框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39912451/