我有一个带有工具栏的视图控制器。当我仅添加UISlider
时:
let slider = UISlider()
let sliderItem = UIBarButtonItem(customView: slider)
toolbarItems = [sliderItem]
它充满了工具栏的整个宽度。
但是,如果我添加一个按钮:
...
let buttonItem = UIBarButtonItem(title: "Press", style: .plain, target: nil, action: nil)
toolbarItems = [sliderItem, buttonItem]
滑块缩小到屏幕的大约1/3的宽度。滑块和按钮在左上角彼此相邻。
我尝试添加固定的垫片,但是没有效果。
如何使滑块伸展以填充代码中的其余宽度?
答案 0 :(得分:1)
您可以使用 UIStackView 安排子视图和UIButton:
let button = UIButton()
button.backgroundColor = .blue
let slider = UISlider()
let stackView = UIStackView(frame: toolBar.frame)
stackView.distribution = .fill
stackView.alignment = .top
stackView.axis = .horizontal
stackView.addArrangedSubview(slider)
stackView.addArrangedSubview(button)
stackView.spacing = 8.0
toolBar.items = [UIBarButtonItem(customView: stackView)]