下划线Textview

时间:2012-01-28 16:51:55

标签: android textview underline

一个简单的问题: 你知道为什么我能做到这一点:

pnrCode = (TextView)findViewById(R.id.pnr);
        SpannableString pnrContent = new SpannableString("PNR: ");
        pnrContent.setSpan(new UnderlineSpan(), 0, pnrContent.length(), 0);
        pnrCode.setText(pnrContent + BookingSettings.getBookingSegment().substring(0, 6));

文字没有加下划线。

然而,如果我只这样做:

  pnrCode = (TextView)findViewById(R.id.pnr);
            SpannableString pnrContent = new SpannableString("PNR: ");
            pnrContent.setSpan(new UnderlineSpan(), 0, pnrContent.length(), 0);
            pnrCode.setText(pnrContent);

文字有下划线。

我要创建两个textview? 你知道另一个解决方案吗?

感谢任何帮助;)

1 个答案:

答案 0 :(得分:7)

  

我要创建两个textview?

没有

pnrContent + BookingSettings.getBookingSegment().substring(0, 6)可能会给你一个String,因为我相信+运算符会将双方转换为String个对象,然后执行连接。因此,您将丢失格式。

相反,请使用new SpannableString("PNR: "+ BookingSettings.getBookingSegment().substring(0, 6));,并根据需要设置UnderlineSpan的长度。