修改轨道高度需要写一个UISlider的子类,重写系统方法
// MXSlider.h
#import <UIKit/UIKit.h>
@interface MXSlider : UISlider
@end
// MXSlider.m
#import "MXSlider.h"
@implementation MXSlider
// 控制slider的宽和高,这个方法才是真正的改变slider滑道的高的
- (CGRect)trackRectForBounds:(CGRect)bounds
{
bounds.size.height=6;
self.layer.cornerRadius = 2.5;
return bounds;
}
// 改变滑块的触摸范围
- (CGRect)thumbRectForBounds:(CGRect)bounds trackRect:(CGRect)rect value:(float)value
{
rect.origin.x = rect.origin.x - 5 ;
rect.size.width = rect.size.width +10;
return CGRectInset ([super thumbRectForBounds:bounds trackRect:rect value:value], 5 , 5);
}