【发布时间】:2012-05-06 19:57:15
【问题描述】:
我有这样的问题...我想在用户滑动时阻止他的滑块。我认为 .isUserInteractionEnabled 会处理这个问题,但它只有在用户释放滑块后才有效。 我想从用户那里“窃取”滑块并停止它。
怎么做?
【问题讨论】:
标签: iphone objective-c xcode user-interface uislider
我有这样的问题...我想在用户滑动时阻止他的滑块。我认为 .isUserInteractionEnabled 会处理这个问题,但它只有在用户释放滑块后才有效。 我想从用户那里“窃取”滑块并停止它。
怎么做?
【问题讨论】:
标签: iphone objective-c xcode user-interface uislider
你应该给你的 UISlider 对象添加一个选择器。例如,如果你有一个名为“slider”的 UISlider,你应该这样做:
[slider addTarget:self action:@selector(sliderMoved:) forControlEvents:UIControlEventValueChanged];
//runs a method called "sliderMoved" located in the same class as the slider (hence the addTarget:self) when the value is changed of the slider
然后你可以做一个这样的方法,当用户试图滑动滑块时,它会将值设置为平均值:
-(void)sliderMoved:(UISlider*)sender{
sender.value = (sender.maximumValue + sender.minimumValue) / 2;
}
【讨论】: