利用可能な 3 つの UIButton イベントがあります。
UITouchUPInside
UITouchDown
UITouchDownRepeat
私の問題は次のとおりです。
ボタン(再生-一時停止)があります。初めて再生ボタンが表示され、ユーザーがそれをタップすると、プロセスが開始されます。ボタンのイメージが一時停止に変わり、タグが 1 に変わります。
ユーザーが一時停止ボタンをタップすると、プロセスが一時停止し、画像が再生に変わり、タグが 0 に変わります。
今私の問題は、ユーザーが複数回タップすると、正しく実行されないことです。デスクトップマウスのダブルクリックのように。
上記の 3 つの方法をすべて試しましたが、常に最初の 2 つの方法が呼び出されています。では、それを回避する方法。
ダブルタップの場合は、プロセスも 1 回だけ開始する必要があります。
提案してください。
編集:
現在TouchUpInside
、イベントのみを使用しており、確認中です
if (btn.tag == 0) {
// change to pause button
// start process
btn.tag = 1;
}
else if (btn.tag == 1) {
// change to play button
// stop process
btn.tag = 0;
}
しかし、ユーザーがボタンをすばやくタップすると、これが問題を引き起こしています。私のプロセスはスレッドで実行されているため、ロードと停止に時間がかかります。一方、使用はすでにボタンをダブルタップしています。