Давняя проблема с элементом управления UISlider в iPhone OS состоит в том, что вы не можете сделать его выше. Точнее говоря, вы можете заставить его выглядеть выше, указав более высокие изображения для большого пальца и дорожки, но область касания остается крошечной 23 пикселя высотой.
Майкл Патрициос опубликовал способ , чтобы сделать ползунки по умолчанию намного проще, а вариант этого метода может работать с большими ползунками. Что вам нужно сделать, это подкласс UISlider и переопределить pointInside в вашем классе:
// How many extra touchable pixels you want above and below the 23px slider
#define SIZE_EXTENSION_Y 10
- (BOOL) pointInside:(CGPoint)point withEvent:(UIEvent*)event {
CGRect bounds = self.bounds;
bounds = CGRectInset(bounds, 0, SIZE_EXTENSION_Y);
return CGRectContainsPoint(bounds, point);
}
В Интерфейсном Разработчике установите ползунок на использование вашего нового подкласса UISlider, и теперь у вас есть ползунок с сенсорной высотой 43px.