下划线文本视图

发布于 2024-12-29 06:50:38 字数 713 浏览 1 评论 0原文

只是一个简单的问题: 你知道为什么我可以这样做吗:

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);

文本带有下划线。

我必须创建两个文本视图? 你知道另一种解决方案吗?

如有任何帮助,我们将不胜感激;)

Just a quick question:
Do you know why i can do that:

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));

The text is not underlined.

Whereas, if i do only that:

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

The text is underlined.

I have to create two textview ?
Do you know another solution ?

Any help is appreciated ;)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

笑咖 2025-01-05 06:50:38

我必须创建两个文本视图?

不。

pnrContent + BookingSettings.getBookingSegment().substring(0, 6) 可能会给您一个 String 返回,因为我相信 + 运算符会将两边转换为 String 对象,然后执行串联。因此,您将丢失格式。

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

I have to create two textview ?

No.

pnrContent + BookingSettings.getBookingSegment().substring(0, 6) is probably going to give you a String back, as I believe the + operator will convert both sides to String objects, then perform the concatenation. Hence, you will lose your formatting.

Instead, use new SpannableString("PNR: "+ BookingSettings.getBookingSegment().substring(0, 6));, and set the length of the UnderlineSpan as needed.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文