替换 UIStackView 中的视图
Replace view inside UIStackView
我有一个 UIStackView
,里面有 5 个按钮。这些按钮之一 (#4) 需要在单击后由 UIPickerView
替换,一旦其他四个按钮之一切换回 UIButton
已选中。
UIStackView
是水平,对齐是填充,分布是按比例填充[=33] =].
堆栈是使用 故事板 完成的,我正在尝试将视图替换为:
override func viewDidLayoutSubviews(){
self.pickerView.frame.origin = self.view.viewWithTag(40)!.frame.origin
self.pickerView.frame.size = CGSize(width: 30, height: 30)
}
但是我的 UIStackView
在点击按钮后不会重新排列,按钮 #5 停留在 UIPickerView
.[=17= 的顶部]
有什么想法吗?
好的,我找到了代码。我不得不将 addView
替换为 addArrangedSubview
。
最终代码(按下按钮时):
let stack = (self.view.viewWithTag(20) as! UIStackView)
stack.addArrangedSubview(self.pickerView)
我有一个 UIStackView
,里面有 5 个按钮。这些按钮之一 (#4) 需要在单击后由 UIPickerView
替换,一旦其他四个按钮之一切换回 UIButton
已选中。
UIStackView
是水平,对齐是填充,分布是按比例填充[=33] =].
堆栈是使用 故事板 完成的,我正在尝试将视图替换为:
override func viewDidLayoutSubviews(){
self.pickerView.frame.origin = self.view.viewWithTag(40)!.frame.origin
self.pickerView.frame.size = CGSize(width: 30, height: 30)
}
但是我的 UIStackView
在点击按钮后不会重新排列,按钮 #5 停留在 UIPickerView
.[=17= 的顶部]
有什么想法吗?
好的,我找到了代码。我不得不将 addView
替换为 addArrangedSubview
。
最终代码(按下按钮时):
let stack = (self.view.viewWithTag(20) as! UIStackView)
stack.addArrangedSubview(self.pickerView)