2016-09-04 1 views
0

Je cherche un moyen de déterminer si le caractère ou la chaîne est souligné en utilisant une méthode similaire à la méthode getStyle() pour les objets StyleSpan, mais pour un objet UnderlineSpan au lieu.Android: Utilisation d'une méthode getStyle() pour supprimer underlinespan

Voici un exemple en utilisant la classe StyleSpan, je besoin d'un moyen de tester si le texte est souligné dans une méthode similaire:

StyleSpan[] rt = str.getSpans(selectionStart, selectionEnd, StyleSpan.class); 
boolean exists = false; 
for (int i = 0; i < rt.length; i++) { 
    if (rt[i].getStyle() == android.graphics.Typeface.ITALIC){ 
     str.removeSpan(rt[i]); 
     exists = true; 
    } 
} 

Est-il possible d'y arriver pour les objets UnderlineSpan?

Répondre

0

Bien sûr, modifiez simplement le paramètre StyleSpan.class dans l'appel getSpans() à UnderlineSpan.class.

+0

Ne fonctionne pas, je reçois une ligne ondulée en dessous en me disant de le transformer en styleSpan –

+0

Avez-vous changé le côté gauche de l'attribution également? Ils doivent correspondre, c'est à dire que vous devez avoir UnderlineSpan [] rt = ... – chrisdowney

+0

Ne semble pas fonctionner, j'ai essayé UnderlineSpan sur les deux côtés gauche et droit, mais il ne semble pas être une méthode getStyle() qui apparaît en haut UnderlineSpan [] rt = s.getSpans (styleStart, position, UnderlineSpan.class); –