将下划线从选定的段切换到另一个

问题描述 投票:0回答:0

我很难找到一种方法让它从一个下面转到另一个。这是我最接近它的工作但它仍然只在我首先点击愿望清单部分时才有效,然后当我回到购物车时它就死了并且不再改变位置。

 @objc func segmentedControlValueChanged(_ sender: UISegmentedControl) {
    switch sender.self.selectedSegmentIndex {
    case 0 :
        NSLayoutConstraint.activate([
            underlineView.topAnchor.constraint(equalTo: self.bottomAnchor),
            underlineView.heightAnchor.constraint(equalToConstant: 2),
            underlineView.leadingAnchor.constraint(equalTo: self.leadingAnchor),
            underlineView.widthAnchor.constraint(equalTo: self.widthAnchor, multiplier:1 /  CGFloat(self.numberOfSegments)),
        ])
    case 1:
        NSLayoutConstraint.activate([
            underlineView.topAnchor.constraint(equalTo: self.bottomAnchor),
            underlineView.heightAnchor.constraint(equalToConstant: 2),
            underlineView.widthAnchor.constraint(equalTo: self.widthAnchor, multiplier: 1 /  CGFloat(self.numberOfSegments)),
            underlineView.trailingAnchor.constraint(equalTo: self.trailingAnchor)
        ])
    default:
       break
    }
}

这是它的工作原理:

swift uikit uisegmentedcontrol
© www.soinside.com 2019 - 2024. All rights reserved.