Я пытаюсь ввести задержку между событием «начало касания» и действием, таким как воспроизведение звука. После прохождения порога, если палец пользователя остается относительно неподвижным, я надеюсь постепенно увеличивать громкость до тех пор, пока палец не будет поднят или вытащен из прямоугольной области эффекта. Если это затянется, я могу сыграть другой звук.

Я начинаю с задержки, но я не знаю, как определить продолжительность времени, в течение которого палец удерживается в определенном положении.

1
Stu 10 Июн 2009 в 18:06

2 ответа

Вам нужно будет настроить таймер, который вы запускаете, чтобы увеличивать громкость каждые 1/10, скажем.

Вы можете либо подсчитать эти события таймера, либо сохранить [NSDate date] в своем touchesBegan, а затем проверить это, когда происходят другие ваши события - перемещенные касания, которые остаются внутри вашего прямоугольника или таймера.

Последний является более гибким подходом и не требует значительных накладных расходов.

1
Rog 11 Июн 2009 в 00:06

Сообщения, которые вы получаете при прикосновении, — это когда вы поднимаете палец или двигаете пальцем. Предполагая, что ваше приложение поддерживает только одно касание, это должно быть довольно просто. Если вы поддерживаете мультитач, вам нужно будет определить, какой палец какой, когда они двигаются.

1
Nosredna 10 Июн 2009 в 18:48