之前做过一个播放器,音量条两边有空隙。在去新浪面试的时候,面试官提到了这个知识点。我在stackoverflow上爬了好久终于找到了方法,分享给iOS初学者。

重写UISlider的这个方法

- (CGRect)thumbRectForBounds:(CGRect)bounds trackRect:(CGRect)rect value:(float)value
{
    rect.origin.x = rect.origin.x - 10 ;
    rect.size.width = rect.size.width +20;
    return CGRectInset ([super thumbRectForBounds:bounds trackRect:rect value:value], 10 , 10);
}

当然UISlider还有这么几个方法可以重写

-(CGRect)trackRectForBounds:(CGRect)bounds
{
    bounds.origin.x=15;
    bounds.origin.y=bounds.size.height/3;
    bounds.size.height=bounds.size.height/5;
    bounds.size.width=bounds.size.width-30;
    return bounds;
}
- (CGRect)minimumValueImageRectForBounds:(CGRect)bounds;
- (CGRect)maximumValueImageRectForBounds:(CGRect)bounds;

分享给iOS初学者们,如果你的问题得到了解决,希望您能评论几句哦!

打赏作者
如果这篇文章帮助了你,可以请作者喝罐可乐,以此激励作者创作更多!

您的支持将鼓励我继续创作!

[微信] 扫描二维码打赏

[支付宝] 扫描二维码打赏