SpannableString - JRE Emulation | JRE Emulation
public class

SpannableString

extends Object
implements CharSequence CharSequence GetChars Spannable
java.lang.Object
   ↳ android.text.SpannableString

Class Overview

This is the class for text whose content is immutable but to which markup objects can be attached and detached. For mutable text, see SpannableStringBuilder.

Summary

[Expand]
Inherited Constants
From interface android.text.Spanned
Public Constructors
SpannableString(CharSequence source)
Public Methods
final char charAt(int i)
Returns the char value at the specified index.
boolean equals(Object o)
Compares this instance with the specified object and indicates if they are equal.
final void getChars(int start, int end, char[] dest, int off)
Exactly like String.getChars(): copy chars start through end - 1 from this CharSequence into dest beginning at offset destoff.
int getSpanEnd(Object what)
Return the end of the range of text to which the specified markup object is attached, or -1 if the object is not attached.
int getSpanFlags(Object what)
Return the flags that were specified when setSpan(Object, int, int, int) was used to attach the specified markup object, or 0 if the specified object has not been attached.
int getSpanStart(Object what)
Return the beginning of the range of text to which the specified markup object is attached, or -1 if the object is not attached.
<T> T[] getSpans(int queryStart, int queryEnd, Class<T> kind)
Return an array of the markup objects attached to the specified slice of this CharSequence and whose type is the specified type or a subclass of it.
int hashCode()
Returns an integer hash code for this object.
final int length()
Returns the length of this character sequence.
int nextSpanTransition(int start, int limit, Class kind)
Return the first offset greater than or equal to start where a markup object of class type begins or ends, or limit if there are no starts or ends greater than or equal to start but less than limit.
void removeSpan(Object what)
void setSpan(Object what, int start, int end, int flags)
final CharSequence subSequence(int start, int end)
Returns a new CharSequence that is a subsequence of this sequence.
final String toString()
Returns a string containing a concise, human-readable description of this object.
static SpannableString valueOf(CharSequence source)
Inherited Methods
[Expand]
From class java.lang.Object
From interface java.lang.CharSequence
From interface android.text.GetChars
From interface android.text.Spannable
From interface android.text.Spanned

Public Constructors

public SpannableString (CharSequence source)

Public Methods

public final char charAt (int i)

Returns the char value at the specified index. An index ranges from zero to length() - 1. The first char value of the sequence is at index zero, the next at index one, and so on, as for array indexing.

If the char value specified by the index is a surrogate, the surrogate value is returned.

Parameters
i the index of the char value to be returned
Returns
  • the specified char value

public boolean equals (Object o)

Compares this instance with the specified object and indicates if they are equal. In order to be equal, o must represent the same object as this instance using a class-specific comparison. The general contract is that this comparison should be reflexive, symmetric, and transitive. Also, no object reference other than null is equal to null.

The default implementation returns true only if this == o. See Writing a correct equals method if you intend implementing your own equals method.

The general contract for the equals and hashCode() methods is that if equals returns true for any two objects, then hashCode() must return the same value for these objects. This means that subclasses of Object usually override either both methods or neither of them.

Parameters
o the object to compare this instance with.
Returns
  • true if the specified object is equal to this Object; false otherwise.

public final void getChars (int start, int end, char[] dest, int off)

Exactly like String.getChars(): copy chars start through end - 1 from this CharSequence into dest beginning at offset destoff.

public int getSpanEnd (Object what)

Return the end of the range of text to which the specified markup object is attached, or -1 if the object is not attached.

public int getSpanFlags (Object what)

Return the flags that were specified when setSpan(Object, int, int, int) was used to attach the specified markup object, or 0 if the specified object has not been attached.

public int getSpanStart (Object what)

Return the beginning of the range of text to which the specified markup object is attached, or -1 if the object is not attached.

public T[] getSpans (int queryStart, int queryEnd, Class<T> kind)

Return an array of the markup objects attached to the specified slice of this CharSequence and whose type is the specified type or a subclass of it. Specify Object.class for the type if you want all the objects regardless of type.

public int hashCode ()

Returns an integer hash code for this object. By contract, any two objects for which equals(Object) returns true must return the same hash code value. This means that subclasses of Object usually override both methods or neither method.

Note that hash values must not change over time unless information used in equals comparisons also changes.

See Writing a correct hashCode method if you intend implementing your own hashCode method.

Returns
  • this object's hash code.

public final int length ()

Returns the length of this character sequence. The length is the number of 16-bit chars in the sequence.

Returns
  • the number of chars in this sequence

public int nextSpanTransition (int start, int limit, Class kind)

Return the first offset greater than or equal to start where a markup object of class type begins or ends, or limit if there are no starts or ends greater than or equal to start but less than limit. Specify null or Object.class for the type if you want every transition regardless of type.

public void removeSpan (Object what)

public void setSpan (Object what, int start, int end, int flags)

public final CharSequence subSequence (int start, int end)

Returns a new CharSequence that is a subsequence of this sequence. The subsequence starts with the char value at the specified index and ends with the char value at index end - 1. The length (in chars) of the returned sequence is end - start, so if start == end then an empty sequence is returned.

Parameters
start the start index, inclusive
end the end index, exclusive
Returns
  • the specified subsequence

public final String toString ()

Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:

   getClass().getName() + '@' + Integer.toHexString(hashCode())

See Writing a useful toString method if you intend implementing your own toString method.

Returns
  • a printable representation of this object.

public static SpannableString valueOf (CharSequence source)