jjzjj

SpannableStringBuilder

全部标签

Android 富文本 SpannableStringBuilder 探究

文章目录前言一、SpannableStringBuilder是什么?二、使用步骤1.示例代码2.参数对应start:样式生效的开始位置,包括该位置end:样式结束的位置,不包括该位置flags:取值有如下四个Spannable.SPAN_EXCLUSIVE_INCLUSIVESpannable.SPAN_INCLUSIVE_EXCLUSIVESpannable.SPAN_INCUJSIVE_INCLUSIVESpannable.SPAN_EXCLUSIVE_EXCLUSIVEwhat:对应的各种Span1BackgroundColorSpan:背景色2ForegroundColorSpan:颜

android - 如何检测 SpannableStringBuilder android 中的特定单词?

我想知道如何检测SpannableStringBuilder中的某些指定单词。我的目的是改变这个词的颜色。假设我有SpannableStringBuilderspan,列表中包含我的单词,例如“Name”、“Family”、“Location”等。在这个阶段我想检查我的span是否包含这些词然后改变颜色。例如我想要这样的东西:if(span.contain("Name"))//ChangeColoroftheword"Name"everywhereinthisspanif(span.contain("Family"))//ChangeColoroftheword"Family"ever

android - java.lang.IndexOutOfBoundsException : getChars (7 . .. 0) 在开始之前结束

我的用户通过http://code.google.com/p/android-remote-stacktrace/向我发送未处理的异常我收到以下内容,但不知道这意味着什么。java.lang.IndexOutOfBoundsException:getChars(7...0)hasendbeforestartatandroid.text.SpannableStringBuilder.checkRange(SpannableStringBuilder.java:935)atandroid.text.SpannableStringBuilder.getChars(SpannableStrin

android - 在 TextView 中更改不同字符的大小,Android

我想创建一个TextView,其中我希望一些字符的大小为40pt,一些字符的大小为20pt。我尝试使用Html.fromhtml()但找不到任何用于更改大小的标签。如果可能的话,请帮忙。 最佳答案 使用SpannableStringBuilder像这样:SpannableStringBuilderspanTxt=newSpannableStringBuilder("Different");spanTxt.append("android.");//makethetextsize2times.spanTxt.setSpan(newRel

android - 按钮上的 SpannableString 不适用于 API21?

我尝试使用SpannableString在切换按钮上放置一个图标。并在API17上工作,但不在API21上工作。如您所见,它适用于API17的Button和TextView,但仅适用于API21的TextView(“Z”未被图标替换)。privateSpannableStringBuildercreateSpanIcon(intrid,Stringname){Drawabled=getActivity().getResources().getDrawable(rid);d.setBounds(0,0,20,20);ImageSpanimageSpan=newImageSpan(d,Dy

android - 合并 spannable 对象时出错

我想合并3个spannable对象。此代码工作正常:Spannables1=newSpannableStringBuilder("bold");s1.setSpan(newStyleSpan(android.graphics.Typeface.BOLD),0,s1.length(),Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);Spannables2=newSpannableStringBuilder("not");Spannables3=newSpannableStringBuilder("BOLD");s3.setSpan(newStyleSpan(and

java.lang.IndexOutOfBoundsException : setSpan (N . .. N) 结束超过长度 10500

我在调用EditText.setSelection()时遇到此异常java.lang.IndexOutOfBoundsException:setSpan(N...N)endsbeyondlength10500N可以是任意数字。例如,如果我调用setSelection(10476,10568),N将为10568。但是10500是常量。java.lang.IndexOutOfBoundsException:setSpan(10568...10568)endsbeyondlength10500atandroid.text.SpannableStringBuilder.checkRange(S

android - IndexOutOfBoundsException setSpan (0 ... 1) 超出长度 0 结束

我将这个库用于带有标签的MaterialeditText:https://github.com/rey5137/Material/wiki/Text-Field不错的图书馆:)但是……我正在使用下一个代码来检查输入的符号是否正确:privatebooleanhasCorrectSymbols(Stringinput){Stringtre="[A-Za-z0-9\\@\\#\\$\\%\\&\\*\\(\\)\\-\\+\\_\\;\\:\\?\\.\\,\\!]+$";if(input.matches(tre)){returntrue;}returnfalse;}我使用textWatc

android - 我如何在android studio中写一个分数

如何在androidstudio中写分数。我要生成的带有水平线的分数的最佳做法是什么。 最佳答案 使用html格式。但是,您必须在顶部和底部添加额外的空间以防止它被切断。SpannableStringBuildertest=newSpannableStringBuilder();test.append("\n");test.append(Html.fromHtml("5/9"));test.append("\n"); 关于android-我如何在androidstudio中写一个分数,我

android - textwatcher 上的 IndexOutOfBoundsException

我正在使用textwatcher检查用户输入的有效性。我的一些用户因此textwacher导致崩溃。这是谷歌给出的堆栈跟踪:java.lang.IndexOutOfBoundsException:Invalidindex1,sizeis1atjava.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:255)atjava.util.ArrayList.get(ArrayList.java:308)atandroid.widget.TextView.sendAfterTextChanged(TextView.java