【问题标题】:how to add constraints programmatically for rangeslider?如何以编程方式为范围滑块添加约束?
【发布时间】:2017-09-29 08:52:48
【问题描述】:

在这里,我使用GZRangeSlider 来设置范围滑块,在这里我需要以编程方式提供约束,以便支持横向模式,任何人都可以帮助我如何在表格视图单元格中以编程方式提供?

class SliderCell : UITableViewCell {

    var rangeSlider = GZRangeSlider()

    override func awakeFromNib() {
        super.awakeFromNib()
        rangeSlider = GZRangeSlider(frame: CGRect(x:8,y: 60 ,width: self.contentView.bounds.width - 32,height: 30))
        self.addSubview(rangeSlider)
    }

【问题讨论】:

  • stackoverflow.com/questions/36507043/… 你需要了解约束。我建议您阅读文档,并创建另一个项目以在 Interface Builder 上对其进行测试,然后您可以根据需要以编程方式创建它们。

标签: ios uitableview swift3 constants


【解决方案1】:
    let rangeSliderLeadingConstraint = NSLayoutConstraint(
                                        item: rangeSlider,
                                        attribute: .leading,
                                        relatedBy: .equal,
                                        toItem: self,
                                        attribute: .leading,
                                        multiplier: 1.0,
                                        constant: 0)

    let rangeSliderTrailingConstriant = NSLayoutConstraint(
                                        item: rangeSlider,
                                        attribute: .trailing ,
                                        relatedBy: .equal,
                                        toItem: self,
                                        attribute: .trailing,
                                        multiplier: 1.0,
                                        constant: 0)

    let rangeSliderBottomConstriant = NSLayoutConstraint(
                                        item:,
                                        attribute: .bottom ,
                                        relatedBy: .equal,
                                        toItem: self,
                                        attribute: .bottom,
                                        multiplier: 1.0,
                                        constant: 0)

    let rangeSliderTopConstriant = NSLayoutConstraint(
                                            item: rangeSlider,
                                            attribute: .top ,
                                            relatedBy: .equal,
                                            toItem: self,
                                            attribute: .top,
                                            multiplier: 1.0,
                                            constant: 0)


    self.addConstraints([rangeSliderTopConstriant,rangeSliderBottomConstriant,rangeSliderTrailingConstriant,rangeSliderLeadingConstraint])

【讨论】:

  • 对于所有你已经将常量值设置为 0 的约束,那么它将如何设置约束?
  • 您可以根据需要更改常量值,我只是展示了添加约束以查看的方法。以上解决方案将使 rangeSlider 与单元格大小相同。
猜你喜欢
  • 1970-01-01
  • 2016-05-28
  • 1970-01-01
  • 1970-01-01
  • 2015-08-15
  • 2015-02-21
  • 2015-09-24
相关资源
最近更新 更多