释放触摸时UISlider太敏感了

时间:2014-03-03 12:39:50

标签: ios uikit uislider

在UISlider上释放触摸时,滑块的值会稍微变化并且不受控制地变化。它非常灵敏,甚至只是在屏幕上释放手指时也会发生变化。如何实现用户可以设置他想要的值而不会出现问题?

这就是我创建UISlider的方式:

UISlider *slider = [[UISlider alloc] initWithFrame: CGRectMake(100.0, 100.0, 200.0, 40.0)];
slider.minimumValue = 0.0;
slider.maximumValue = 100.0;
[slider addTarget: self action: @selector(sliderChanged:event:) forControlEvents:UIControlEventAllEvents];
[slider setValue: 50.0 animated: NO];

2 个答案:

答案 0 :(得分:5)

您正在为所有活动注册。只为你的活动设置

[slider addTarget: self action: @selector(sliderChanged:event:) forControlEvents: UIControlEventTouchDragInside];

答案 1 :(得分:2)

请尝试将其更改为:

[slider addTarget: self action: @selector(sliderChanged:event:) forControlEvents: UIControlEventValueChanged];

如果您想要的只是在手指抬起时触发目标,请尝试将continuous的{​​{1}}属性设置为UISlider