8
votes

TextView AndroidView Linify Intercepts avec des gestes de vue parent

Le problème est que si je relie la TextView, la Sousliyng Scrollview n'écoutez pas les gestes de balayage que j'ai installé. Il existe une façon de pouvoir être liaison sans gâcher les gestes de la vue de sous-sélection? J'ai essayé de remplacer Ontouchevent et de retourner faux à Action_Move, mais le geste de ScrollView's's Gestes a besoin de l'événement Action_Down et Action_Up vers la fonction. Y a-t-il un moyen d'atteindre cela?


0 commentaires

3 Réponses :


47
votes

Linify s'applique à une émissionMethod sur TextView linkmovementMethod . Cette méthode de mouvement a pensé qu'il implémente une méthode verticale défilante, il remplace toute autre méthode de défilement que le parent a. Bien que touchevent puisse être distribué au parent, le parent spécifique ScrollView nécessaire la séquence entière action_down , action_move , < Code> Action_Up Pour effectuer (détection de balayage).

La solution à mon problème est après la liaison pour supprimer la méthode de défilement TextView et gérer l'action de détection linkmovement Disection de lien dans Ontchevent de TextView. xxx

de cette façon, j'ai la détection Link_Click (effectuée uniquement avec l'utilisateur touche le lien et non TEXTVIEW) et je ne fais pas T avoir l'ensemble de la méthode de liaison.


4 commentaires

Je suis content que cela a finalement aidé quelqu'un: D


Belle solution, clair et non hacky. Je devais déplacer retour vrai; dans la branche positive de l'interne si cependant de laisser la portée en surbrillance sur le toucher constant.


Le "Supprimer la méthode de défilement du TextView" mentionné via textview.setmovementMethod (null); et doit être appelé après Vous avez défini le texte TextView.


Merci, cela m'a sauvé beaucoup de temps!



3
votes

@weakwire et les réponses @riditicly sont correctes. Je viens de créer un petit gist que vous pouvez réutiliser dans votre projet.

Ceci est le lien: https://gist.github.com/Amilcar-andrade/e4b76840DA1DC92FEBFC


1 commentaires

J'ai porté cette classe à Xamarin / C #: Gist.github.com/pmachapman/a9888348A93933AC359EBE0D6A5314467



0
votes

Il y a une petite chose mauvaise que TextView :: Settext (...) Méthode Utilisation du drapeau de l'Autolink, XXX

Alors j'ai passé un temps à comprendre, pourquoi je désactive les liens dans listview article, mais il obtient un lien parfois!

Vous devez définir cet indicateur de la valeur nécessaire puis appelez un colletext (...)


2 commentaires

C'est un peu flou ce que vous dites ici. Est-ce une réponse à la question ou essayez-vous de poser une nouvelle question?


C'est surtout une note, car j'ai trouvé ce sujet lors de la recherche de "Linififier TextView in ListView"