2013-04-07 84 views
-1

有沒有其他方法可以更改UISlider中的範圍的TrackImage,而與Thumb的位置無關?更改UISlider中的範圍圖像

它應該是這樣的:

Slider

我已經有滑塊沒有黃色的範圍。我怎樣才能達到黃色範圍?

回答

2

如果您的部署目標至少爲iOS 6.0,,則可以使用UIImageResizingModeTile來完成此操作。示例代碼:

static UIImage *blueYellowStripesImage() { 
    UIGraphicsBeginImageContextWithOptions(CGSizeMake(100, 9), YES, 0); { 
     [[UIColor blueColor] setFill]; 
     UIRectFill(CGRectMake(0, 0, 50, 9)); 
     [[UIColor yellowColor] setFill]; 
     UIRectFill(CGRectMake(50, 0, 50, 9)); 
     [[UIColor colorWithWhite:0 alpha:0.4] setFill]; 
     UIRectFillUsingBlendMode(CGRectMake(0, 5, 100, 4), kCGBlendModeNormal); 
    } 
    UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext(); 
    image = [image resizableImageWithCapInsets:UIEdgeInsetsZero resizingMode:UIImageResizingModeTile]; 
    return image; 
} 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    UIImage *image = blueYellowStripesImage(); 
    [self.slider setMinimumTrackImage:image forState:UIControlStateNormal]; 
    [self.slider setMaximumTrackImage:image forState:UIControlStateNormal]; 
} 

結果:

slider with tiled image tracks

+0

謝謝你,這會爲我做! – user2254535 2013-04-09 14:57:15