美文网首页
UISlider的子控件有缝隙的原因

UISlider的子控件有缝隙的原因

作者: _RG | 来源:发表于2020-04-14 18:29 被阅读0次

需要继承UISlider重写下面

-(CGRect)trackRectForBounds:(CGRect)bounds

子控件左右两边默认都会有几个像素的间隙(左右子控件的长度加起来不等于UISlider的长度),需要在trackRectForBounds将起始X值设为0,width为bounds的width

-(CGRect)trackRectForBounds:(CGRect)bounds{
  //此处设置为子控件的范围
    CGRect react = bounds;
    react.origin.y = (bounds.size.height - 3)/2;
    react.size.height = 3;
    return react;
}

如果需要设置thumb的范围需要重写
- (CGRect)thumbRectForBounds:(CGRect)bounds trackRect:(CGRect)rect value:(float)value

相关文章

网友评论

      本文标题:UISlider的子控件有缝隙的原因

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