检测UISlider的触摸?
我在屏幕上有一个UISlider,我需要能够检测到什么时候用户停止触摸它。 (所以我可以淡化一些元素)。
我曾尝试使用:
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
但在滑块结束触摸时,这不起作用。
您可以使用两个控制事件来检测触摸何时结束; 尝试
[slider addTarget:self action:@selector(touchEnded:) forControlEvents:UIControlEventTouchUpInside];
要么
[slider addTarget:self action:@selector(touchEnded:) forControlEvents:UIControlEventTouchUpOutside];
如果要检测touchesEnd
事件的两种types,请使用
[slider addTarget:self action:@selector(touchEnded:) forControlEvents:UIControlEventTouchUpInside | UIControlEventTouchUpOutside];
而不是使用touchesEnded:
不应该用于这个目的),附加一个动作到UISlider
的UIControlEventValueChanged
事件,并设置UISlider
的continuous
属性为NO
,所以当用户完成select值。
mySlider.continuous = NO; [mySlider addTarget:self action:@selector(myMethodThatFadesObjects) forControlEvents:UIControlEventValueChanged];