美文网首页
iOS 仿华为系统进度条 解决滑动到左边和右边进度条显示异常问

iOS 仿华为系统进度条 解决滑动到左边和右边进度条显示异常问

作者: 香烟不灭 | 来源:发表于2022-02-15 11:29 被阅读0次

    使用系统UISlider 仿华为系统进度条。 样式图如下:

    image.png
    //设置滑动条高度 (20高)
    -(CGRect)trackRectForBounds:(CGRect)bounds{
    
        bounds.origin.x=10;
    
        bounds.origin.y=bounds.size.height/2-10;
    
        bounds.size.height=bounds.size.height/2.0;
    
        bounds.size.width=bounds.size.width-20;
    
        return bounds;
    }
    

    出现问题,设置了滑动条高度后,出现滑动到95%的时候,进度条都变成蓝色了。
    滑动到小于%5的时候,左边已滑动的颜色不出来。

    解决方法:设置滑动条高度之后,需要设置左侧和右侧的图片,才能解决。
    左侧图片设置和进度条颜色一样的纯色图片(示例蓝色),右侧图片设置和未选颜色一样的纯色图片(示例灰色)。注意下面三张图中,切图的时候切到边上,每个图片不要有边距。不然效果出来不理想。

    左侧和右侧图片样式:


    image.png

    中间滑块图片样式:


    image.png

    设置代码:

    UIImage *barImageLeft = [[UIImage imageNamed:@"VolumeLeftimg"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 10, 0, 10)];
     [_volumeSlider setMinimumTrackImage:barImageLeft forState:UIControlStateNormal];
            
    UIImage *barImageRight = [[UIImage imageNamed:@"VolumeRightimg"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 10, 0, 10)];
    [_volumeSlider setMaximumTrackImage:barImageRight forState:UIControlStateNormal];
            
    

    最后如果帮助了你,请左边 点赞。

    相关文章

      网友评论

          本文标题:iOS 仿华为系统进度条 解决滑动到左边和右边进度条显示异常问

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