我有一个StackView,里面还有另外两个视图
还有一个仅用于交换Stackview内部视图的按钮
问题是,当我尝试交换它们时,按钮仅在第一次时执行,但是第二次点击时不会重新交换视图
我用insertArrangedSubview
尝试过此操作
@IBOutlet weak var stackView: UIStackView!
@IBAction func swapButton(_ sender: Any) {
self.montos.insertArrangedSubview(self.montos.subviews[1],at: 0)
并且也尝试了addArrangedSubview
@IBAction func swapButton(_ sender: Any) {
montos.addArrangedSubview(self.montos.subviews[0])
}
但都具有相同的结果
我读了this线程,但答案仅适用于viewDidLoad函数进行1次交换
我需要它们交换用户多次点击按钮的时间
isViewsSwitched
,才能在stackView中切换我们的视图if self.isViewsSwitched{
stackview.addArrangedSubview(self.stackview.subviews[0])
self.isViewsSwitched = false
}else{
stackview.addArrangedSubview(self.stackview.subviews[1])
self.isViewsSwitched = true
}
此代码通过每次调用交换stackview内部的两个视图