2013-05-03 15 views
5

Min değeri 0 ve maksimum değer 5 (herhangi bir değer) olan bir kaydırıcım var, aynı kaydırıcıda 5 farklı renk göstermeliyim, yani 0-1 bir renk, 1-2 başka bir renk vb. üzerinde. Mümkün mü . Herhangi bir fikir varsa bana yardım edin.Farklı renklerdeki UISlider

+0

yardımcı olacaktır renkler

- (void)sliderValueChanged:(UISlider *)slider { /* Here you check the value of slider from [slider value] call; then set the color of slider by using [slider setMinimumTrackTintColor:[UIColor redColor]]; */ } 

Umut ayarlayabilirsiniz // www .cocoacontrols.com/arama? utf8 =% E2% 9C% 93 & q = kaydırıcı – Impossible

+0

Bu çok yardımcı olabilir Sadece deneyin [] [1] [1]: http://stackoverflow.com/questions/5865528/customizing-a-slider-control sayesinde – Impossible

cevap

1

bunun için ve görüntüleri kullanmak zorunda olacak Kaydırıcıyla altında istediğiniz renklerle bir ImageView yerleştirin ve clearColor için MinTrackTint ve MaxTrackTint ayarlayabilirsiniz

-(IBAction)sliderValueChanged:(UISlider *)sender 
{ 
// depending on the value 
// if value is 1 { 
    [mySlider setMinimumTrackImage:[UIImage imageNamed:@"leftImageforValue=1.png"] forState:UIControlStateNormal]; 
    [mySlider setMaximumTrackImage:[UIImage imageNamed:@"rightImageforValue=1.png"] forState:UIControlStateNormal]; 
} 
0

. Kaydırıcı tamamen şeffaf (başparmak hariç) ancak işlevsel olacaktır. https:

4

bu deneyin, hedef yönteminde

UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(0.0f, 400.0f, 320.0f, 35.0f)]; 
[slider setMinimumTrackTintColor:[UIColor redColor]]; // Initial color of selection 
[slider addTarget:self action:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged]; 
[[self view] addSubview:slider]; 

, sen bu size yardımcı olabilir bu sizi :)

İlgili konular