SORU
4 Kasım 2010, PERŞEMBE


TextView bağlantıların altı çizili kaldırın - Android

İki textview veritabanı bağlantıları göstermek için kullanıyorum, link renklerini değiştirmeyi başardım ama altı çizili kaldırmak istiyorum

email.setText(c.getString(5));
    website.setText(c.getString(6));
    Linkify.addLinks(email, Linkify.ALL);
    Linkify.addLinks(website, Linkify.ALL);

XML veya Kod bunu yapabilir miyim ?

CEVAP
16 Aralık 2010, PERŞEMBE


Ve altı çizili olmadığını sürümleri ile URLSpan örnekleri bulma değiştirerek kod yapabilirsin. Linkify.addLinks() arama fonksiyonu çağırdıktan sonra stripUnderlines() aşağıda TextViews: her yapıştırılır

    private void stripUnderlines(TextView textView) {
        Spannable s = (Spannable)textView.getText();
        URLSpan[] spans = s.getSpans(0, s.length(), URLSpan.class);
        for (URLSpan span: spans) {
            int start = s.getSpanStart(span);
            int end = s.getSpanEnd(span);
            s.removeSpan(span);
            span = new URLSpanNoUnderline(span.getURL());
            s.setSpan(span, start, end, 0);
        }
        textView.setText(s);
    }

Bu TextPaint > yok URLSpan özelleştirilmiş bir sürümünü gerektiriyor "" özellik: . altı çizili

    private class URLSpanNoUnderline extends URLSpan {
        public URLSpanNoUnderline(String url) {
            super(url);
        }
        @Override public void updateDrawState(TextPaint ds) {
            super.updateDrawState(ds);
            ds.setUnderlineText(false);
        }
    }

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • merumputdotcom

    merumputdotc

    24 ŞUBAT 2012
  • ParryGripp

    ParryGripp

    12 AĞUSTOS 2006
  • Rugiagialia

    Rugiagialia

    1 Ocak 2008