Событие Doble Click Button в xcode - PullRequest
       27

Событие Doble Click Button в xcode

1 голос
/ 19 декабря 2011

Я хочу открыть веб-браузер, т.е. страницу Google, нажав кнопку.Я успешно делаю это одним кликом.Но то же самое, чего я хочу добиться двойным щелчком события.Я много искал об этом и получил программу, которая открывается при нажатии в любом месте экрана.пожалуйста, направьте меня, если у кого-то есть какие-либо знания об этом.

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 30 октября 2012

попробуйте использовать это для события

UIControlEventTouchDownRepeat

0 голосов
/ 19 декабря 2011

Попробуйте это: -

Предположим, щелчок - это действие, которое вызывается: -

[btn addTarget:self action:@selector(click) forControlEvents:UIControlEventTouchUpInside];

Что вам нужно сделать, это: -

Создайте BOOL глобальную переменную

in .h file do: -

BOOL isDoubleClick;
NSTimer *doubleClickTimer;

in .m file do:-

-(IBAction)click
{
    if (isDoubleClick==YES) {
        //DOUBLE CLICK
        isDoubleClick=NO;
    }
    else if(isDoubleClick==NO)
    {
        //SINGLE CLICK
        isDoubleClick=YES;
        doubleClickTimer = [NSTimer scheduledTimerWithTimeInterval:2 target:self selector:@selector(TimerReload:) userInfo:nil repeats:NO];
    }
    NSLog(@"bool %s", isDoubleClick ? "true" : "false");

}

-(void)TimerReload:(NSTimer *)timer
{
    doubleClickTimer = nil;
    isDoubleClick = NO;
}

Пояснение: -

Сначала ваш isDoubleClick равен NO. Когда вы нажимаете на кнопку в первый раз, она получает YES. После этого вы снова нажимаете на второй раз, если она получает YES Тогда это означает, что это сделайте двойной щелчок и сделайте все, что захотите, двойным щелчком. Сделайте isDoubleClick - NO, чтобы следующий раз считался одним щелчком.

Использование таймера: -

Для двойного щелчка необходимо убедиться, что два щелчка выполняются один за другим. Для этого включите таймер на один щелчок и через 2 секунды включите метод таймера, чтобы установить isDoubleClick на NO, чтобы убедиться, что теперь, если пользователь нажимает на кнопку, щелчок будет считаться одним, а не двойным.

Надеюсь, это сэкономит вам пару часов.

Счастливое кодирование !!

...