Question

Je veux désactiver à long contact de l'application. Je ne contrôle pas sur le code HTML que je suis le chargement sur mon WebView.

Était-ce utile?

La solution

Dans délégué webViewDidFinishLoad je lance un javascript sur la page HTML chargée que de désactiver la touche longue.

[webView stringByEvaluatingJavaScriptFromString:@"document.body.style.webkitTouchCallout='none'; document.body.style.KhtmlUserSelect='none'"];

Autres conseils

Vous pouvez essayer de remplacer les méthodes suivantes du contrôleur de vue:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event;

cette façon, vous pouvez remplacer la gestion habituelle des touches avec votre propre implémentation.

Ouvrez votre point de vue dans Interface Builder, cliquez sur la vue Web, puis décocher la « Interaction utilisateur DEBLOQUE » case à cocher dans les attributs inspecteur.

Si vous voulez faire dans le code, définissez l'affichage Web est userInteractionEnabled propriété à NO.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top