2014-11-04 191 views
1

我创建了一个UISlider,然后设置色调颜色分钟轨道这样的:UISlider扭曲圆角

[slider setMinimumTrackTintColor:[UIColor whiteColor]]; 

但是我结束了在左侧这样扭曲圆角。我该怎么办 ?

enter image description here

编辑:下面是再现问题代码:

UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(40, 40, 180, 50)]; 

[slider setMinimumTrackTintColor:[UIColor whiteColor]]; 
+0

请找到它的编辑。 – 2014-11-04 07:15:19

回答

0

我已经经历了同样的故障,并通过添加minimumTrackImage滑块,基于颜色找到了解决办法。

UIImage *black = [UIImage imageWithColor:[UIColor blackColor]]; 
[self.slider setMinimumTrackImage:black forState:UIControlStateNormal]; 

添加的UIImage的类别下面的方法 - imageWithColor

+ (UIImage *)imageWithColor:(UIColor *)color { 
    CGRect rect = CGRectMake(0.0f, 0.0f, 1.0, 1.0); 
    UIGraphicsBeginImageContext(rect.size); 
    CGContextRef context = UIGraphicsGetCurrentContext(); 

    CGContextSetFillColorWithColor(context, [color CGColor]); 
    CGContextFillRect(context, rect); 

    UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext(); 

    return image; 
}