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