UIButton
が[myButton setEnabled:NO];
によって無効にされても、まだ動作するタッチリスナーを使用することは可能ですか?iOSが無効のボタンで内側に触れる
は、私が試してみました:
[self addTarget:self action:@selector(myButtonTUI:) forControlEvents:UIControlStateDisabled];
が、無駄に。
UIButton
が[myButton setEnabled:NO];
によって無効にされても、まだ動作するタッチリスナーを使用することは可能ですか?iOSが無効のボタンで内側に触れる
は、私が試してみました:
[self addTarget:self action:@selector(myButtonTUI:) forControlEvents:UIControlStateDisabled];
が、無駄に。
あなたの質問への答えは、あなたがこのような機能をシミュレートすることができませ
enabled
A Boolean value that determines whether the receiver is enabled.
@property(nonatomic, getter=isEnabled) BOOL enabled
Discussion
Specify YES to make the control enabled; otherwise, specify NO to make it disabled.
The default value is YES. If the enabled state is NO, the control ignores touch
events and subclasses may draw differently.
ではありませんか?はい。
ボタンを無効にする代わりに、ボタンのアクションセレクタで機能が起動するかどうかを確認してください。画像を無効にするために画像を変更することさえできます。このようにボタンはまだタッチイベントを受信し、正しい条件が満たされていれば必要な機能を起動できます。
これは、同じサイズのUIView
にUIButton
をラップし、親ビューにタップジェスチャー認識を取り付けることによって達成することができます。
UITapGestureRecognizer* gesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(myButtonHit)];
[self.myButtonView addGestureRecognizer:gesture];
取り付けるときに、動作するようには思えないいくつかの理由についてジェスチャー認識機能をUIButton
自体に追加しました。これは最適なソリューションでした。
これよりも優れた解決策があるはずです。別のジェスチャー認識機能をボタンに付けることはできませんか? – devios1
記録のために、私はこれを、UIViewの中にボタンを置き、UIViewにジェスチャ認識子をつけることで実現しました。何らかの理由で、ボタンに直接接続するときに機能しませんでした。 – devios1
あなたはこの道を進むアクセシビリティに問題があります。 – rshev