修改slider背景

作者: ForeverYoung21 | 来源:发表于2015-05-22 21:00 被阅读895次

    学习了Swift,所以开始用Swift来写。

    如果想要修改slider上的小按钮和背景条,可以用以下方法:

    // 设置小按钮正常状态显示的图片
    let thumbImageNormal = UIImage(named: "SliderThumb-Normal")
    slider.setThumbImage(thumbImageNormal, forState: .Normal)
    
    //设置小按钮hightlighted状态显示的图片
    let thumbImageHighlighted = UIImage(named: "SliderThumb-Highlighted")
    slider.setThumbImage(thumbImageHighlighted, forState: .Highlighted)
    
    //设置图片拉伸的范围
    let insets = UIEdgeInsets(top: 0, left: 14, bottom: 0, right: 14)
    
    //设置slider的minimumTrackImage和maximumTrackImage
    if let trackLeftImage = UIImage(named: "SliderTrackLeft") { 
        let trackLeftResizable = trackLeftImage.resizableImageWithCapInsets(insets)     
        slider.setMinimumTrackImage(trackLeftResizable, forState: .Normal)
    }
    if let trackRightImage = UIImage(named: "SliderTrackRight") {
        let trackRightResizable = trackRightImage.resizableImageWithCapInsets(insets)
        slider.setMaximumTrackImage(trackRightResizable, forState: .Normal) 
    
    }
    
    • 若是不理解图片拉伸范围以及resizableImageWithCapInsets方法,可以参考这篇文章:

      [UIImage resizableImageWithCapInsets:]使用注意

      注意在拉伸图片的时候,是以tiled方式,所以在选取拉伸范围的时候要注意,文章里有说明。

    • 在设置slider的时候,setMinimumTrackImage将拉伸之后的图片设置为划过的部分(slider左面的部分),setMaximumTrackImage将拉伸之后的图片设置为slider的背景(slider右面的部分)。

    相关文章

      网友评论

      • 主动的王同学:if let trackLeftImage = UIImage(named: "SliderTrackLeft") {
        ****
        }
        请问这里的if 该怎么理解,表示什么意思呢~
      • 主动的王同学:setMinimumTrackImage 表示左边,setMinimumTrackImage表示右边。我终于懂了~

      本文标题:修改slider背景

      本文链接:https://www.haomeiwen.com/subject/yzalqttx.html