当选择索引时,如何使用HMSegmentedControl实现此样式。请帮助我如何在swift 3.0中实现这一点......如果可能的话
这是我的代码:
func setupSegementCategory(){
segmentCategory.sectionTitles = ["home","about","contract","home","about","contract"]
segmentCategory.backgroundColor = #colorLiteral(red: 0.7683569193, green: 0.9300123453, blue: 0.9995251894, alpha: 1)
segmentCategory.translatesAutoresizingMaskIntoConstraints = false
segmentCategory.selectionIndicatorLocation=HMSegmentedControlSelectionIndicatorLocation.down
segmentCategory.isVerticalDividerEnabled=false
segmentCategory.selectedSegmentIndex=0
segmentCategory.selectionIndicatorColor = UIColor.white
segmentCategory.segmentWidthStyle = HMSegmentedControlSegmentWidthStyle.dynamic
segmentCategory.titleTextAttributes = [
NSForegroundColorAttributeName : #colorLiteral(red: 0.2549019754, green: 0.2745098174, blue: 0.3019607961, alpha: 1),
NSFontAttributeName : UIFont.systemFont(ofSize: 17)
]
segmentCategory.backgroundColor=Constant.GlobalConstants.kColor_blue
segmentCategory.selectedTitleTextAttributes = [
NSFontAttributeName : UIFont.systemFont(ofSize: 17),
NSForegroundColorAttributeName :UIColor(red:0.74, green:0.70, blue:1.00, alpha:1.0)
]
segmentCategory.addTarget(self, action:#selector(segmentedControlValueChanged(sender:)), for: .valueChanged)
}
func segmentedControlValueChanged(sender: UISegmentedControl) {
let sortedViews = sender.subviews.sorted( by: { $0.frame.origin.x < $1.frame.origin.x } )
for (index, view) in sortedViews.enumerated() {
if index == sender.selectedSegmentIndex {
view.tintColor = UIColor.red
} else {
view.tintColor = UIColor.lightGray
}
}
}
答案 0 :(得分:0)
目前无法在HMSegmentedControl中获得该样式。