Here are the examples of the java api class android.text.style.BackgroundColorSpan taken from open source projects.
1. TextReader#cleanSpans()
Project: AmazeFileManager
File: TextReader.java
File: TextReader.java
private void cleanSpans() { // resetting current highlight and line number nodes.clear(); mCurrent = -1; mLine = 0; // clearing textView spans BackgroundColorSpan[] colorSpans = mInput.getText().getSpans(0, mInput.length(), BackgroundColorSpan.class); for (BackgroundColorSpan colorSpan : colorSpans) { mInput.getText().removeSpan(colorSpan); } }
2. MircColors#toSpannable()
Project: Yaaic
File: MircColors.java
File: MircColors.java
/** * Converts a string with mIRC style and color codes to a SpannableString with * all the style and color codes applied. * * @param text A string with mIRC color codes. * @return A SpannableString with all the styles applied. */ public static SpannableString toSpannable(SpannableString text) { SpannableStringBuilder ssb = new SpannableStringBuilder(text); replaceControlCodes(boldPattern.matcher(ssb), ssb, new StyleSpan(Typeface.BOLD)); replaceControlCodes(underlinePattern.matcher(ssb), ssb, new UnderlineSpan()); replaceControlCodes(italicPattern.matcher(ssb), ssb, new StyleSpan(Typeface.ITALIC)); /* * Inverse assumes that the background is black and the foreground is white. * We apply the background color first and then apply the foreground color * to all the parts where BackgroundColorSpans are found. */ replaceControlCodes(inversePattern.matcher(ssb), ssb, new BackgroundColorSpan(colors[0] | 0xFF000000)); BackgroundColorSpan[] inverseSpans = ssb.getSpans(0, ssb.length(), BackgroundColorSpan.class); for (int i = 0; i < inverseSpans.length; i++) { ssb.setSpan(new ForegroundColorSpan(colors[1] | 0xFF000000), ssb.getSpanStart(inverseSpans[i]), ssb.getSpanEnd(inverseSpans[i]), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); } Matcher m = colorPattern.matcher(ssb); while (m.find()) { int start = m.start(); int end = m.end(); Integer color = Integer.parseInt(m.group(1)); int codelength = m.group(1).length() + 1; if (color <= 15 && color >= 0) { ssb.setSpan(new ForegroundColorSpan(colors[color] | 0xFF000000), start, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); } if (m.group(2) != null) { color = Integer.parseInt(m.group(2)); if (color <= 15 && color >= 0) { ssb.setSpan(new BackgroundColorSpan(colors[color] | 0xFF000000), start, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); } codelength = codelength + m.group(2).length() + 1; } ssb.delete(start, start + codelength); // Reset the matcher with the modified text so that the ending color code character can be matched again. m.reset(ssb); } // Remove left over codes return new SpannableString(removeStyleAndColors(ssb)); }
3. MakeUp#mark()
Project: RxAndroidBootstrap
File: MakeUp.java
File: MakeUp.java
public MakeUp mark(int start, int length, int color) { final BackgroundColorSpan span = new BackgroundColorSpan(color); sb.setSpan(span, start, start + length, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); return this; }
4. MakeUp#mark()
Project: MVPAndroidBootstrap
File: MakeUp.java
File: MakeUp.java
public MakeUp mark(int start, int length, int color) { final BackgroundColorSpan span = new BackgroundColorSpan(color); sb.setSpan(span, start, start + length, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); return this; }
5. TtmlParserTest#assertBackground()
Project: ExoPlayer
File: TtmlParserTest.java
File: TtmlParserTest.java
private void assertBackground(Spannable spannable, int backgroundColor) { BackgroundColorSpan[] backgroundColorSpans = spannable.getSpans(0, spannable.length(), BackgroundColorSpan.class); if (backgroundColor != 0) { assertEquals(backgroundColor, backgroundColorSpans[backgroundColorSpans.length - 1].getBackgroundColor()); } else { assertEquals(0, backgroundColorSpans.length); } }
6. SpanHelper#setColor()
Project: AwesomeValidation
File: SpanHelper.java
File: SpanHelper.java
public static void setColor(EditText editText, int color, ArrayList<int[]> ranges) { String text = editText.getText().toString(); SpannableString spanText = new SpannableString(text); BackgroundColorSpan markup = new BackgroundColorSpan(color); for (int[] range : ranges) { spanText.setSpan(markup, range[0], range[1] + 1, Spannable.SPAN_INCLUSIVE_INCLUSIVE); } editText.setText(spanText); }
7. TextContentView#init()
Project: androidclient
File: TextContentView.java
File: TextContentView.java
private void init(Context context) { int color = context.getResources().getColor(R.color.highlight_color); mHighlightColorSpan = new BackgroundColorSpan(color); }