首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SpannableStringBuilder将字符串部分设置为粗体不起作用

SpannableStringBuilder是Android中的一个类,用于构建可变的文本字符串。它可以实现对文本的格式化和样式设置,包括设置部分文本为粗体。

然而,有时候在使用SpannableStringBuilder设置部分文本为粗体时可能会出现不起作用的情况。这可能是由于以下几个原因导致的:

  1. 字体不支持粗体:某些字体可能不支持粗体样式,因此无论如何设置,都无法显示为粗体。在这种情况下,可以尝试更换其他字体或使用系统默认字体。
  2. 设置的范围不正确:在使用SpannableStringBuilder设置粗体文本时,需要指定要设置为粗体的文本的起始位置和结束位置。如果起始位置或结束位置设置不正确,就无法正确应用粗体样式。确保设置的范围是正确的。
  3. 其他样式覆盖:如果在设置粗体之前已经设置了其他样式,例如斜体或下划线,可能会导致粗体样式无法生效。在这种情况下,可以尝试重新设置样式,确保粗体样式在其他样式之前设置。

总结起来,如果在使用SpannableStringBuilder设置部分文本为粗体时不起作用,可以尝试以下解决方法:

  1. 确保字体支持粗体样式。
  2. 检查设置的范围是否正确。
  3. 确保没有其他样式覆盖了粗体样式。

腾讯云相关产品中,与文本处理相关的产品有腾讯云智能语音合成(Tencent Cloud Text to Speech,链接:https://cloud.tencent.com/product/tts)和腾讯云智能语音识别(Tencent Cloud Automatic Speech Recognition,链接:https://cloud.tencent.com/product/asr),它们可以用于语音合成和语音识别任务,但与SpannableStringBuilder不直接相关。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android中Textview文字设置不同颜色、下划线、加粗、超链接

在项目中会遇到在一行文字,部分需要不同的文字颜色、下划线以及超链接来展示,下面介绍两种方式实现: 1、SpannableString来实现 1)简介 对于给Textview设置不同颜色,就不得不提SpannableString...首先SpannableString、SpannableStringBuilder基本上与String差不多,也是用来存储字符串,但它们俩的特殊就在于有一个SetSpan()函数, 能给这些存储的String...总而言之,SpannableString和SpannableStringBuilder和string差不多,但是不能给字符串设置 不同的样式....和SpannableStringBuilder就是退化为String类型,直接显示原来的String字符串,而不会再显示这些附加的 额外信息。...); //设置背景色青色 //设置字体样式正常,粗体,斜体,粗斜体 msp.setSpan(new StyleSpan(Typeface.NORMAL), 18, 20

4.7K21
  • Android中的SpannableString与SpannableStringBuilder详解

    String差不多,也是用来存储字符串,但它们俩的特殊就在于有一个SetSpan()函数,能给这些存储的String添加各种格式或者称样式(Span),原来的String以不同的样式显示出来,比如在原来...所以,总而言之,SpannableString、SpannableStringBuilder与String一样,首先也是传字符串,但SpannableString、SpannableStringBuilder...和SpannableStringBuilder就是退化为String类型,直接显示原来的String字符串,而不会再显示这些附加的额外信息。...特定范围的字符串设定Span样式,可以设置多个(比如同时加上下划线和删除线等),Falg参数标识了当在所标记范围前和标记范围后紧贴着插入新字符时的动作,即是否对新插入的字符应用同样的样式。...比如如果这里数3(即第4个字符),第4个字符不会有任何特效。从下面的例子也可以看出来。

    2.3K20

    安卓 topic-字符串资源 string-resource

    http://developer.android.youdaxue.com/guide/topics/resources/string-resource.html 字符串资源 字符串资源您的应用提供具有可选文本样式和格式设置的文本字符串...如需了解有关样式和格式设置字符串的信息,请参阅有关格式和样式设置部分 String 可从应用或从其他资源文件(如 XML 布局)引用的单个字符串。...-- Causes a compile error --> 如果字符串中包含双引号,您必须将其转义(使用 ")。 字符串加上单引号不起作用。...例如: 您带样式的文本资源存储 HTML 转义字符串: Hello, %1$s!...然后照常设置字符串格式,但还要调用 fromHtml(String) 以 HTML 文本转换成带样式文本: Resources res = getResources(); String text =

    89710

    详解Android登陆界面用户协议解决方案

    创客中心注册申请合同》", "《创客中心系统服务合同》", "《创客中心服务合同》", "《代理协议》" }; private boolean isChecked; 然后我们搞一个字符串...,第一位来个空格作为图片的替换 接着我们创建一个该字符串SpannableStringBuilder,然后调用setIconSapn方法字符串的第一个字符替换成图标(默认为位选中状态),setIconSapn...方法在下面 然后我们第一个字符位置设置一个点击事件imagClick ,根据对应的选中状态做图标的变化 final String string = " 已阅读并同意"; //图标(默认位选中)...canvas.translate(x, transY); drawable.draw(canvas); canvas.restore(); } 紧接着我们遍历拿到的协议组,挨个添加到之前的string中,每个协议设置蓝色...,并设置点击事件,最后返回最终的SpannableStringBuilder (先添加点击事件,否则前景色会被点击事件的颜色淡化) for (int i = 0; i < protocols.length

    1.1K31

    在2022年使用Python调用Windows 11的通知系统

    前情提要 在这之前我通常使用Windows-10-Toast-Notifications来调用Windows的通知系统,但是从我更新到了22622后我发现这个库现在不起作用,于是几经辗转,找到了一个可用的库...类名 作用 ToastText1 最多可包含三行文本自动换行的单个字符串 ToastText2 第一行上有一个粗体文本字符串,第二行和第三行有一个自动换行常规文本字符串 ToastText3 一个在第一行和第二行上自动换行的粗体文本字符串...,在第三行上有一个常规文本字符串 ToastText4 第一行有一个粗体文本字符串,第二行有一个常规文本字符串,第三行上的一个常规文本字符串 ToastImageAndText1 最多可包含三行文本的图像和单个字符串...ToastImageAndText2 一个图像,第一行有一个粗体文本字符串,一个常规文本字符串,在第二行和第三行上换行 ToastImageAndText3 一个图像,第一行上的一个粗体文本字符串,一个常规字符串...,在第二行和第三行上自动换行的文本 ToastImageAndText4 一个图像,第一行有一个粗体文本字符串,一个常规文本字符串,在第二行上,在第三行上有一个常规文本字符串 在第三行中我们将定义这些类来继续

    1.9K10

    Android利用CountDownTimer实现验证码倒计时效果实例

    1、需求分析 点击按钮之后,按钮文字变为“ns后发送验证码”(n倒计时读数); 为了让倒计时更加醒目,秒数和单位设为蓝色; 倒计时结束之后,按钮的文字显示“重新发送”。 瞄一眼效果图: ?...首先是构造函数,里面有两个参数: millisInFuture:倒计时的总时间,单位毫秒 countDownInterval:倒计时的时间间隔,单位毫秒 比如我想设置10秒的倒计时,每隔1秒就读一次数...我们采用的倒计时读数是millisUntilFinished除于1000得到的,这里就有一个小小的陷阱了:millisUntilFinished是长整型变量,除于1000之后得到是整数部分。...6、给倒计时读数和单位设置前景色 给同一字符串中的不同字符设置不同的字体颜色,这就需要用到SpannableString与SpannableStringBuilder相关的知识了,限于篇幅,这里就不赘述了.../拼接要显示的字符串 SpannableStringBuilder sb = new SpannableStringBuilder(); sb.append(String.valueOf(time

    1.3K20

    真·富文本编辑器的演进之路-Span开胃菜

    http://www.developer.android.com"), 12, 15, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE) TabStopSpan.Standard:用来字符串中的...Span进阶 Span是一个非常强大的概念,前面对Span的了解,只能说是九牛一毛,对于富文本来说,Span还有很多需要进一步探索的内容,下面这部分,我们更深入的了解Span的一些富文本特性。...draw里面的其它处理,是为了处理换行和设置setLineSpacing非默认值的场景。...,这是TextView的默认逻辑,要去掉高亮,只需要将highlightColor设置透明即可。...其原理就是设置ClickableSpan的点击色Cyan,同时对整个文案进行断句,按句设置ClickableSpan,这样就实现了点击选中的功能。

    2.5K20

    微博的文本编辑和显示(emoji表情,@某人、链接高亮点击)

    3、表情插♂入到输入框里(。・・)ノ 对gridView增加了item点击事件,根据点击的文本,转化为表情资源,然后生成ImageSpan,加入到Spannable里面。...之后SpannableString来存储对应的ImageSpan 和文本中间的关系,最后利用SpannableStringBuilder 生成好的SpannableString插入到输入框中。...那么首先再找一个女朋友,设置TextVidew的AutoLinkMask系统识别的URL和Phone,这样系统就会把对应的女朋友(文本)识别出来处理Spanable格式 textView.setAutoLinkMask...记录下来这个indexstartIndex,下一个循环从这个startIndex开始indexOf的获取。...最后设置下方效果来达到点击跳转。

    2.1K20

    php实现命令行里输出带颜色文字

    今天执行composer的时候看到命令窗口出现的提示里面有的关键性部分带有颜色,于是很好奇研究了一下,在这里记录下来 其实在命令行输出带颜色字体主要是使用的 ANSI 转义字符实现的,我们先看个例子:...在终端中,ANSI定义了用于屏幕显示的Escape屏幕控制码,其格式: \033[38;5;1m红色文字\033[0m 代表开始设置标签 代表设置完成标签 代表设置参数 代表要显示的字符...这里开始标签和结束标签都是固定的,开始标签是 “\033[” 结束标签是 “m” 其中参数部分的含义可以按照下表中的参数来设置 代码作用备注 0 重置/正常 关闭所有属性。...21 关闭粗体或双下划线 关闭粗体未广泛支持;双下划线几乎无支持。 22 正常颜色或强度 不强不弱。 23 非斜体、非尖角体 24 关闭下划线 去掉单双下划线。...注意:由于各个系统终端的不同,所以有的设置不起作用的或者效果会有所差异,最终效果以实际的显示效果为准!

    1.8K20

    Android 使用Canvas在图片上绘制文字的方法

    ,还可以为字体类型设置字体风格,如设置粗体: Paint mp = new Paint(); Typeface font = Typeface.create(Typeface.SANS_SERIF, Typeface.BOLD...//斜体 * Typeface.NORMAL //常规 但是有时上面那些设置在绘图过程中是不起作用的,所以还有如下设置方式: Paint mp = new Paint(); mp.setFakeBoldText...(true); //true粗体,false粗体 mp.setTextSkewX(-0.5f); //float类型参数,负数表示右斜,整数左斜 mp.setUnderlineText(true...(); //设置字体大小,int型,如12 mp.setStrokeWidth(w); //设置线宽,float型,如2.5f,默认绘文本无需设置(默认值好像0),但假如设置了,再绘制文本的时候一定要恢复到...0 说明:对于中文粗体设置,好像只能通过setFakeBoldText(true)来实现,尽管效果看起来不是很实在(字体中空效果)。

    4.3K20

    Android开发的那些坑和小技巧

    如果你设置了此属性值false,就能实现一个在布局上事半功陪的效果。先看一个效果图。 ? 上图中的ListView顶部默认有一个间距,向上滑动后,间距消失,如下图所示。 ?...所以这两个属性的设置决定getView的调用次数。 由此再延伸出另外一个问题:getView被多次调用。 什么叫多次调用?比如position=0它可能调用了几次。看似很诡异吧。...曾经有一个这样的需求:界面一共有4个区域部分,分别是公司基本信息(logo、名称、法人、地址)、公司简介、公司荣誉、公司口碑列表。每部分内容都需要根据内容自适应高度,不能写死。...然后把这4部分分别用4个自定义控件封装起来。...9、java.lang.String cannot be converted to JSONObject 解析服务端返回的JSON字符串时,居然抛出了这个异常。

    1.1K30

    基于Android的编译原理课程设计:C语言的预处理程序

    推至结尾O时,为了前后连贯起来,O必须能导出最开始的符号A,同时若A是表达式,则(A)也必然是表达式,于是最后两条产生式:O->i,O->(A),文法中用i表征一切变量。 2....在上述所有双目运算符中,其产生式都是类似于:A->A&&B这种形式,于是[]运算符的产生式设计:N->N[]O,其中N数组名,O数组下标。 3....经过设计,最终文法: 2.2 表达式的计算 本次课设表达式的计算思路:不使用属性文法计算,而是原表达式转为逆波兰式,再进行计算。...2.3 概要设计 事先写好三个待分析的源程序文件,点击Open按钮,可选择打开哪一个源程序,打开后,会马上进行词法分析,得到各种有意义字符串的种别号,然后根据种别号对源程序设置不同的颜色,例如{}红色...词法分析得到的结果是一个初始符号表,每一个表项都是一个向量,每一个向量表示一个有意义的字符串,比如(SIZE, MACRO, X + Y),表明SIZE是一个宏常量,其表达式X + Y。

    1K10

    Android彩色文字的超链接实现的封装

    二、设计点击事件首先需要创建一个SpannableStringBuilder用于应用点击事件等等的容器val style = SpannableStringBuilder()val parent = "...clickableSpan, index, index+colorText.length, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE)至此,当前的colorText已经具备事件的点击了三、设置无下划线这部分也挺重要的...,index , index+colorText.length, Spanned.SPAN_MARK_MARK)四、设置颜色设置链接的颜色,这部分跟上面的也差不多,设置一下前景颜色,其他参数差不多val...最后需要应用一下即可实现彩色链接的点击事件MyTextView.movementMethod = LinkMovementMethod.getInstance()MyTextView.text = style五、封装分部分讲完了...,接下来就是最精彩的封装了,用到了 Kotlin 的扩展函数首先分析需要扩展的类 TextView 类,这样的话,只要是继承 TextView 类的控件都能用到这个扩展函数的功能其次分析需要的参数,本来应该是需要完整的

    1.1K00

    CSS基础03-CSS字体属性

    ,根据先后顺序依次查看系统是否支持,若不支持则查看后一个,若全都不支持则使用系统默认的字体显示 实际开发中,字体设置常用于标签来整个页面中的字体全部修改掉 3.2字体大小 CSS使用 font-size...属性设置字体大小 p { font-size: 20px; } px(像素)是我们网页中最长使用的单位 谷歌浏览器默认的文字大小16px 不同浏览器可能默认显示的字号不一致...,我们应尽量给一个明确值,而不要使用默认大小 同样可以通过给设置字号大小来指定整个页面文字的大小(标题标签除外,需要单独设定) 3.3字体粗细 CSS使用 font-weight属性来设置字体粗细...,属性值有normal(正常字体,相当于number400,可以用于取消标题等标签的加粗效果)、bold(粗体 相当于number700,也相当于和的效果)、bolder(特粗体...(取默认值),但必须保留font-size和font-family,否则font属性将不起作用

    1.9K20
    领券