2013-05-03 15 views
5

Mam suwak z wartością minimalną 0 i maksymalną wartością 5 (dowolną wartość), muszę wyświetlić 5 różnych kolorów w tym samym suwaku, tj. 0-1 jeden kolor, 1-2 inny kolor i tak na. Czy to możliwe . Pomóż mi, jeśli masz jakiś pomysł.UISlider w różnych kolorach

+0

pomóc To może pomóc: https: // www .cocoacontrols.com/search? utf8 =% E2% 9C% 93 & q = suwak – Impossible

+0

To może ci bardzo pomóc Po prostu spróbuj [] [1] [1]: http://stackoverflow.com/questions/5865528/customizing-a-slider-control Dzięki – Impossible

Odpowiedz

1

trzeba będzie użyć wizerunki na które aw

-(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

można umieścić ImageView ze swoimi pożądanych kolorów pod suwakiem i ustawić MinTrackTint i MaxTrackTint do ClearColor. Suwak będzie całkowicie przezroczysty (z wyjątkiem kciuka), ale funkcjonalny.

4

Spróbuj tego,

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]; 

W metodzie docelowej, można ustawić liczbę kolorów

- (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]]; 

*/ 
} 

nadzieję, że będzie wam :)

Powiązane problemy