Skip to content

Most visited

Recently visited

navigation
Added in API level 1

SpannableString

public class SpannableString
extends Object implements CharSequence, GetChars, Spannable

java.lang.Object
   ↳ android.text.SpannableString


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

Inherited constants

From interface android.text.Spanned

Public constructors

SpannableString(CharSequence source)

Public methods

final char charAt(int i)

Returns the character at 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 number of characters in this sequence.

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

Return the first offset greater than start where a markup object of class type begins or ends, or limit if there are no starts or ends greater than 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 CharSequence from the start index (inclusive) to the end index (exclusive) 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

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

SpannableString

Added in API level 1
SpannableString (CharSequence source)

Parameters
source CharSequence

Public methods

charAt

Added in API level 1
char charAt (int i)

Returns the character at index.

Parameters
i int
Returns
char

equals

Added in API level 1
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 Object: the object to compare this instance with.
Returns
boolean true if the specified object is equal to this Object; false otherwise.

getChars

Added in API level 1
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.

Parameters
start int
end int
dest char
off int

getSpanEnd

Added in API level 1
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.

Parameters
what Object
Returns
int

getSpanFlags

Added in API level 1
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.

Parameters
what Object
Returns
int

getSpanStart

Added in API level 1
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.

Parameters
what Object
Returns
int

getSpans

Added in API level 1
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.

Parameters
queryStart int
queryEnd int
kind Class
Returns
T[]

hashCode

Added in API level 1
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
int this object's hash code.

length

Added in API level 1
int length ()

Returns the number of characters in this sequence.

Returns
int the number of characters.

nextSpanTransition

Added in API level 1
int nextSpanTransition (int start, 
                int limit, 
                Class kind)

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

Parameters
start int
limit int
kind Class
Returns
int

removeSpan

Added in API level 1
void removeSpan (Object what)

Parameters
what Object

setSpan

Added in API level 1
void setSpan (Object what, 
                int start, 
                int end, 
                int flags)

Parameters
what Object
start int
end int
flags int

subSequence

Added in API level 1
CharSequence subSequence (int start, 
                int end)

Returns a CharSequence from the start index (inclusive) to the end index (exclusive) of this sequence.

Parameters
start int: the start offset of the sub-sequence. It is inclusive, that is, the index of the first character that is included in the sub-sequence.
end int: the end offset of the sub-sequence. It is exclusive, that is, the index of the first character after those that are included in the sub-sequence
Returns
CharSequence the requested sub-sequence.

toString

Added in API level 1
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
String a printable representation of this object.

valueOf

Added in API level 1
SpannableString valueOf (CharSequence source)

Parameters
source CharSequence
Returns
SpannableString
This site uses cookies to store your preferences for site-specific language and display options.

Hooray!

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.