Selection

public class Selection
extends Object

java.lang.Object
   ↳ android.text.Selection


Utility class for manipulating cursors and selections in CharSequences. A cursor is a selection where the start and end are at the same offset.

Summary

Fields

public static final Object SELECTION_END

public static final Object SELECTION_START

Public methods

static boolean extendDown(Spannable text, Layout layout)

Move the selection end to the buffer offset physically below the current selection end.

static boolean extendLeft(Spannable text, Layout layout)

Move the selection end to the buffer offset physically to the left of the current selection end.

static boolean extendRight(Spannable text, Layout layout)

Move the selection end to the buffer offset physically to the right of the current selection end.

static final void extendSelection(Spannable text, int index)

Move the selection edge to offset index.

static boolean extendToLeftEdge(Spannable text, Layout layout)
static boolean extendToParagraphEnd(Spannable text)

Extend the selection to the closest paragraph end offset.

static boolean extendToParagraphStart(Spannable text)

Extend the selection to the closest paragraph start offset.

static boolean extendToRightEdge(Spannable text, Layout layout)
static boolean extendUp(Spannable text, Layout layout)

Move the selection end to the buffer offset physically above the current selection end.

static final int getSelectionEnd(CharSequence text)

Return the offset of the selection edge or cursor, or -1 if there is no selection or cursor.

static final int getSelectionStart(CharSequence text)

Return the offset of the selection anchor or cursor, or -1 if there is no selection or cursor.

static boolean moveDown(Spannable text, Layout layout)

Move the cursor to the buffer offset physically below the current offset, to the end of the buffer if it is on the bottom line but not at the end, or return false if the cursor is already at the end of the buffer.

static boolean moveLeft(Spannable text, Layout layout)

Move the cursor to the buffer offset physically to the left of the current offset, or return false if the cursor is already at the left edge of the line and there is not another line to move it to.

static boolean moveRight(Spannable text, Layout layout)

Move the cursor to the buffer offset physically to the right of the current offset, or return false if the cursor is already at at the right edge of the line and there is not another line to move it to.

static boolean moveToLeftEdge(Spannable text, Layout layout)
static boolean moveToParagraphEnd(Spannable text, Layout layout)

Move the cursor to the closest paragraph end offset.

static boolean moveToParagraphStart(Spannable text, Layout layout)

Move the cusrot to the closest paragraph start offset.

static boolean moveToRightEdge(Spannable text, Layout layout)
static boolean moveUp(Spannable text, Layout layout)

Move the cursor to the buffer offset physically above the current offset, to the beginning if it is on the top line but not at the start, or return false if the cursor is already on the top line.

static final void removeSelection(Spannable text)

Remove the selection or cursor, if any, from the text.

static final void selectAll(Spannable text)

Select the entire text.

static void setSelection(Spannable text, int start, int stop)

Set the selection anchor to start and the selection edge to stop.

static final void setSelection(Spannable text, int index)

Move the cursor to offset index.

Inherited methods

Fields

SELECTION_END

Added in API level 1
public static final Object SELECTION_END

SELECTION_START

Added in API level 1
public static final Object SELECTION_START

Public methods

extendDown

Added in API level 1
public static boolean extendDown (Spannable text, 
                Layout layout)

Move the selection end to the buffer offset physically below the current selection end.

Parameters
text Spannable

layout Layout

Returns
boolean

extendLeft

Added in API level 1
public static boolean extendLeft (Spannable text, 
                Layout layout)

Move the selection end to the buffer offset physically to the left of the current selection end.

Parameters
text Spannable

layout Layout

Returns
boolean

extendRight

Added in API level 1
public static boolean extendRight (Spannable text, 
                Layout layout)

Move the selection end to the buffer offset physically to the right of the current selection end.

Parameters
text Spannable

layout Layout

Returns
boolean

extendSelection

Added in API level 1
public static final void extendSelection (Spannable text, 
                int index)

Move the selection edge to offset index.

Parameters
text Spannable

index int

extendToLeftEdge

Added in API level 1
public static boolean extendToLeftEdge (Spannable text, 
                Layout layout)

Parameters
text Spannable

layout Layout

Returns
boolean

extendToParagraphEnd

Added in API level 34
public static boolean extendToParagraphEnd (Spannable text)

Extend the selection to the closest paragraph end offset.

Parameters
text Spannable: the spannable text This value cannot be null.

Returns
boolean true if the selection is extended, otherwise false

extendToParagraphStart

Added in API level 34
public static boolean extendToParagraphStart (Spannable text)

Extend the selection to the closest paragraph start offset.

Parameters
text Spannable: the spannable text This value cannot be null.

Returns
boolean true if the selection is extended, otherwise false

extendToRightEdge

Added in API level 1
public static boolean extendToRightEdge (Spannable text, 
                Layout layout)

Parameters
text Spannable

layout Layout

Returns
boolean

extendUp

Added in API level 1
public static boolean extendUp (Spannable text, 
                Layout layout)

Move the selection end to the buffer offset physically above the current selection end.

Parameters
text Spannable

layout Layout

Returns
boolean

getSelectionEnd

Added in API level 1
public static final int getSelectionEnd (CharSequence text)

Return the offset of the selection edge or cursor, or -1 if there is no selection or cursor.

Parameters
text CharSequence

Returns
int

getSelectionStart

Added in API level 1
public static final int getSelectionStart (CharSequence text)

Return the offset of the selection anchor or cursor, or -1 if there is no selection or cursor.

Parameters
text CharSequence

Returns
int

moveDown

Added in API level 1
public static boolean moveDown (Spannable text, 
                Layout layout)

Move the cursor to the buffer offset physically below the current offset, to the end of the buffer if it is on the bottom line but not at the end, or return false if the cursor is already at the end of the buffer.

Parameters
text Spannable

layout Layout

Returns
boolean

moveLeft

Added in API level 1
public static boolean moveLeft (Spannable text, 
                Layout layout)

Move the cursor to the buffer offset physically to the left of the current offset, or return false if the cursor is already at the left edge of the line and there is not another line to move it to.

Parameters
text Spannable

layout Layout

Returns
boolean

moveRight

Added in API level 1
public static boolean moveRight (Spannable text, 
                Layout layout)

Move the cursor to the buffer offset physically to the right of the current offset, or return false if the cursor is already at at the right edge of the line and there is not another line to move it to.

Parameters
text Spannable

layout Layout

Returns
boolean

moveToLeftEdge

Added in API level 1
public static boolean moveToLeftEdge (Spannable text, 
                Layout layout)

Parameters
text Spannable

layout Layout

Returns
boolean

moveToParagraphEnd

Added in API level 34
public static boolean moveToParagraphEnd (Spannable text, 
                Layout layout)

Move the cursor to the closest paragraph end offset.

Parameters
text Spannable: the spannable text This value cannot be null.

layout Layout: layout to be used for drawing. This value cannot be null.

Returns
boolean true if the cursor is moved, otherwise false.

moveToParagraphStart

Added in API level 34
public static boolean moveToParagraphStart (Spannable text, 
                Layout layout)

Move the cusrot to the closest paragraph start offset.

Parameters
text Spannable: the spannable text This value cannot be null.

layout Layout: layout to be used for drawing. This value cannot be null.

Returns
boolean true if the cursor is moved, otherwise false.

moveToRightEdge

Added in API level 1
public static boolean moveToRightEdge (Spannable text, 
                Layout layout)

Parameters
text Spannable

layout Layout

Returns
boolean

moveUp

Added in API level 1
public static boolean moveUp (Spannable text, 
                Layout layout)

Move the cursor to the buffer offset physically above the current offset, to the beginning if it is on the top line but not at the start, or return false if the cursor is already on the top line.

Parameters
text Spannable

layout Layout

Returns
boolean

removeSelection

Added in API level 1
public static final void removeSelection (Spannable text)

Remove the selection or cursor, if any, from the text.

Parameters
text Spannable

selectAll

Added in API level 1
public static final void selectAll (Spannable text)

Select the entire text.

Parameters
text Spannable

setSelection

Added in API level 1
public static void setSelection (Spannable text, 
                int start, 
                int stop)

Set the selection anchor to start and the selection edge to stop.

Parameters
text Spannable

start int

stop int

setSelection

Added in API level 1
public static final void setSelection (Spannable text, 
                int index)

Move the cursor to offset index.

Parameters
text Spannable

index int