Tworzę niestandardowy UISlider, aby przetestować niektóre pomysły interfejsu. Opiera się głównie na powiększaniu obrazu kciuka.Jak uzyskać środek obrazu kciuka UISlider
I okazało się, jak to zrobić, tak:
UIImage *thumb = [UIImage imageNamed:@"newThumbImage_64px.png"];
[self.slider setThumbImage:thumb forState:UIControlStateNormal];
[self.slider setThumbImage:thumb forState:UIControlStateHighlighted];
[thumb release];
Aby obliczyć powiązany wartość muszę wiedzieć, gdzie punkt centrum obrazu kciuka spada kiedy jest manipulowany. A punkt powinien znajdować się w jego współrzędnych superview.
Patrząc na dokumenty UISlider, nie widziałem żadnej właściwości, która to śledziłaby.
Czy istnieje prosty sposób obliczenia tego lub czy może on pochodzić z niektórych istniejących wartości?
Zakładając zakres suwaka 0..1, punkt jest poprawna, gdy slider.value wynosi 0, ale staje się coraz bardziej off jako slider.value zmian. W równaniu x jest też literówka. – willc2
Co więcej, czy suwakFrame.x nie powinien mieć wartości sliderFrame.origin.x i sliderFrame.size.width? – willc2
Ups, przepraszam za literówkę, poprawiono. –