Кордова: Отключение задержки клика (задержка клика 300 мс) в UIWebView - PullRequest
0 голосов
/ 14 марта 2019

Я искал решение этой проблемы по всему Интернету.Но единственный ответ, который я получаю, это использовать Fastclick.Хотя Fastclick работал для базовых целей, он добавляет накладные расходы на выполнение JavaScript для сенсорных событий, что приводит к jank .Я нашел интересный пост о "взломанном" UIWebView.Автор предлагает добавить некоторый «хакерский» код:

for (UIView* view in webView.scrollView.subviews) {
    if ([view.class.description equalsString:@"UIWebBrowserView"]) {
        for (UIGestureRecognizer *gestureRecognizer in view.gestureRecognizers) {
            if ([gestureRecognizer isKindOfClass:UITapGestureRecognizer.class]) {
                UITapGestureRecognizer *tapRecognizer = (UITapGestureRecognizer *) gestureRecognizer;
                if (tapRecognizer.numberOfTapsRequired == 2 && tapRecognizer.numberOfTouchesRequired == 1) {
                    tapRecognizer.enabled = NO;
                    break;
                }
            }
        }
        break;
    }
}

Но, к сожалению, у меня нет опыта работы с Objective-C.Кто-нибудь знает, как добавить этот «хак» в новый проект Cordova iOS?

...