私はそのような問題を抱えています...ユーザーがスライドしているときにスライダーをブロックしたい。私は .isUserInteractionEnabled がそれを処理すると思っていましたが、ユーザーがスライダーを離した後にのみ機能します。ユーザーからスライダーを「盗み」、停止したいと思います。
どうやってするか?
私はそのような問題を抱えています...ユーザーがスライドしているときにスライダーをブロックしたい。私は .isUserInteractionEnabled がそれを処理すると思っていましたが、ユーザーがスライダーを離した後にのみ機能します。ユーザーからスライダーを「盗み」、停止したいと思います。
どうやってするか?
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;
}