2009-08-05 7 views
16

カスタムスライダコントロール(UISliderとは異なる動作をするコントロール)用のUIControlサブクラスがあります。現時点では、スライダの値が変わるたびに、自分自身のターゲット変数とアクション変数を使用してターゲットにメッセージを送信します。しかし、これはAppleのUIControlEvent定数ではうまくいきません。私はこれらを使うべきかどうか確信が持てませんでした。もしそうなら、私のカスタム "値が変わった"検出をどこに置くことができますか?UIControlEventsとUIControlをサブクラス化する

私はbeginTrackingWithTouch:overrodeとcontinueTrackingWithTouch:YESを返しますが、アクションはディスパッチされません。

+0

「自分のターゲットを使用する」という意味はどうですか? – mk12

+0

私は、UIControlが提供するものを使うのではなく、クラスに自分のアクティブなアクションバンカーを持っていることを意味しました。 – hyn

答えて

29

値が変更されるたびに[self sendActionsForControlEvents:UIControlEventValueChanged]と呼び、コントロールが残りの部分を処理します。

+1

これはまさに私が必要としていたものです。ありがとう。 – hyn

1

uuchesBeganやその他の継承されたメソッドをスーパークラスに渡していることを確認してください。

関連する問題