1
UISegmetedControl
から選択した色を削除します。私はtintColor
がこれを行うことができますが、それもそれでフォントの色を削除します知っています。また、kCTForegroundColorAttributeName
を使用すると、両方が削除されます。色合いを削除しますが、フォントの色を維持するUISegmentedControl
サイドノートUIView
を作成し、選択したセグメントの上に配置して選択状態を表示しました。私はこれがより良く見えると思った。ブランチアウトして自分のカスタムコントロールを作成しようとしています。
public let topLine = UIView()
override func awakeFromNib() {
super.awakeFromNib()
self.removeBorders()
setFont()
addTopLine()
}
func setFont() {
let font = UIFont(name: FontTypes.avenirNextUltraLight, size: 22.0)!
let textColor = UIColor.MyColors.flatWhite
let attribute = [kCTFontAttributeName:font]
self.setTitleTextAttributes(attribute, for: .normal)
}
func addTopLine() {
topLine.backgroundColor = UIColor.MyColors.flatWhite
let frame = CGRect(x: 7,
y: -5,
width: Int(self.frame.size.width)/2,
height: 2)
topLine.frame = frame
self.addSubview(topLine)
}
struct FontTypes {
static let avenirNextRegular = "AvenirNext-Regular"
static let avenirLight = "Avenir-Light"
static let avenirNextUltraLight = "AvenirNext-UltraLight"
}