Stay organized with collections
    
    
      
      Save and categorize content based on your preferences.
    
  
  
    
  
  
  
  
    
  
  
    
    
  
  
CursorAnchorInfo.Builder
  public
  static
  final
  
  class
  CursorAnchorInfo.Builder
  
    extends Object
  
  
  
  
  
  
  
    
  Builder for CursorAnchorInfo. This class is not designed to be thread-safe.
Summary
Public methods | 
  
  
  
    
        
        
        
        
        
        CursorAnchorInfo.Builder
     | 
  
    
      
      addCharacterBounds(int index, float left, float top, float right, float bottom, int flags)
      
      
        Adds the bounding box of the character specified with the index.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        
        
        
        CursorAnchorInfo.Builder
     | 
  
    
      
      addVisibleLineBounds(float left, float top, float right, float bottom)
      
      
        Add the bounds of a visible text line of the current editor.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        
        
        
        CursorAnchorInfo
     | 
  
    
      
      build()
      
      
     | 
  
  
  
  
  
    
        
        
        
        
        
        CursorAnchorInfo.Builder
     | 
  
    
      
      clearVisibleLineBounds()
      
      
        Clear the visible text line bounds previously added to this Builder.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        
        
        
        void
     | 
  
    
      
      reset()
      
      
        Resets the internal state so that this instance can be reused to build another
 instance of CursorAnchorInfo.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        
        
        
        CursorAnchorInfo.Builder
     | 
  
    
      
      setComposingText(int composingTextStart, CharSequence composingText)
      
      
        Sets the text range of the composing text.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        
        
        
        CursorAnchorInfo.Builder
     | 
  
    
      
      setEditorBoundsInfo(EditorBoundsInfo bounds)
      
      
        Sets the current editor related bounds.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        
        
        
        CursorAnchorInfo.Builder
     | 
  
    
      
      setInsertionMarkerLocation(float horizontalPosition, float lineTop, float lineBaseline, float lineBottom, int flags)
      
      
        Sets the location of the text insertion point (zero width cursor) as a rectangle in
 local coordinates.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        
        
        
        CursorAnchorInfo.Builder
     | 
  
    
      
      setMatrix(Matrix matrix)
      
      
        Sets the matrix that transforms local coordinates into screen coordinates.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        
        
        
        CursorAnchorInfo.Builder
     | 
  
    
      
      setSelectionRange(int newStart, int newEnd)
      
      
        Sets the text range of the selection.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        
        
        
        CursorAnchorInfo.Builder
     | 
  
    
      
      setTextAppearanceInfo(TextAppearanceInfo textAppearanceInfo)
      
      
        Set the information related to text appearance, which is extracted from the original
 TextView.
        
    
 
      
     | 
  
  
Inherited methods | 
  
    From class
      
        
          java.lang.Object
        
      
    
    
      
  
  
  
    
        
        
        
        
        
        Object
     | 
  
    
      
      clone()
      
      
        Creates and returns a copy of this object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        
        
        boolean
     | 
  
    
      
      equals(Object obj)
      
      
        Indicates whether some other object is "equal to" this one.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        
        
        void
     | 
  
    
      
      finalize()
      
      
        Called by the garbage collector on an object when garbage collection
 determines that there are no more references to the object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        Class<?>
     | 
  
    
      
      getClass()
      
      
        Returns the runtime class of this Object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        
        
        int
     | 
  
    
      
      hashCode()
      
      
        Returns a hash code value for the object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      notify()
      
      
        Wakes up a single thread that is waiting on this object's
 monitor.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      notifyAll()
      
      
        Wakes up all threads that are waiting on this object's monitor.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        
        
        String
     | 
  
    
      
      toString()
      
      
        Returns a string representation of the object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      wait(long timeoutMillis, int nanos)
      
      
        Causes the current thread to wait until it is awakened, typically
 by being notified or interrupted, or until a
 certain amount of real time has elapsed.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      wait(long timeoutMillis)
      
      
        Causes the current thread to wait until it is awakened, typically
 by being notified or interrupted, or until a
 certain amount of real time has elapsed.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      wait()
      
      
        Causes the current thread to wait until it is awakened, typically
 by being notified or interrupted.
        
    
 
      
     | 
   
  
     
   
 | 
Public constructors
    Builder
    
public Builder ()
    
    
    
  
 
Public methods
    addCharacterBounds
    
public CursorAnchorInfo.Builder addCharacterBounds (int index, 
                float left, 
                float top, 
                float right, 
                float bottom, 
                int flags)
    
    
    
  Adds the bounding box of the character specified with the index.
    
    | Parameters | 
      
        index | 
        
          int: index of the character in Java chars units. Must be specified in
 ascending order across successive calls. | 
      
      
        left | 
        
          float: x coordinate of the left edge of the character in local coordinates. | 
      
      
        top | 
        
          float: y coordinate of the top edge of the character in local coordinates. | 
      
      
        right | 
        
          float: x coordinate of the right edge of the character in local coordinates. | 
      
      
        bottom | 
        
          float: y coordinate of the bottom edge of the character in local coordinates. | 
      
      
        flags | 
        
          int: flags for this character bounds. See CursorAnchorInfo.FLAG_HAS_VISIBLE_REGION,
 CursorAnchorInfo.FLAG_HAS_INVISIBLE_REGION and CursorAnchorInfo.FLAG_IS_RTL. These flags must be
 specified when necessary. | 
      
    
    
      
      | Throws | 
        
          IllegalArgumentException | 
          If the index is a negative value, or not greater than
 all of the previously called indices. | 
        
      
  
 
    addVisibleLineBounds
    
public CursorAnchorInfo.Builder addVisibleLineBounds (float left, 
                float top, 
                float right, 
                float bottom)
    
    
    
  Add the bounds of a visible text line of the current editor.
 The line bounds should not include the vertical space between lines or the horizontal
 space before and after a line.
 It's preferable if the line bounds are added in the logical order, so that IME can
 process them easily.
    
    | Parameters | 
      
        left | 
        
          float: the left bound of the left-most character in the line | 
      
      
        top | 
        
          float: the top bound of the top-most character in the line | 
      
      
        right | 
        
          float: the right bound of the right-most character in the line | 
      
      
        bottom | 
        
          float: the bottom bound of the bottom-most character in the line | 
      
    
    
  
 
    reset
    
public void reset ()
    
    
    
  Resets the internal state so that this instance can be reused to build another
 instance of CursorAnchorInfo.
 
    setComposingText
    
public CursorAnchorInfo.Builder setComposingText (int composingTextStart, 
                CharSequence composingText)
    
    
    
  Sets the text range of the composing text. Calling this can be skipped if there is
 no composing text.
    
    | Parameters | 
      
        composingTextStart | 
        
          int: index where the composing text starts. | 
      
      
        composingText | 
        
          CharSequence: the entire composing text. | 
      
    
    
 
    setInsertionMarkerLocation
    
public CursorAnchorInfo.Builder setInsertionMarkerLocation (float horizontalPosition, 
                float lineTop, 
                float lineBaseline, 
                float lineBottom, 
                int flags)
    
    
    
  Sets the location of the text insertion point (zero width cursor) as a rectangle in
 local coordinates. Calling this can be skipped when there is no text insertion point;
 however if there is an insertion point, editors must call this method.
    
    | Parameters | 
      
        horizontalPosition | 
        
          float: horizontal position of the insertion marker, in the local
 coordinates that will be transformed with the transformation matrix when rendered on the
 screen. This should be calculated or compatible with
 Layout.getPrimaryHorizontal(int). | 
      
      
        lineTop | 
        
          float: vertical position of the insertion marker, in the local coordinates that
 will be transformed with the transformation matrix when rendered on the screen. This
 should be calculated or compatible with Layout.getLineTop(int). | 
      
      
        lineBaseline | 
        
          float: vertical position of the insertion marker, in the local coordinates
 that will be transformed with the transformation matrix when rendered on the screen. This
 should be calculated or compatible with Layout.getLineBaseline(int). | 
      
      
        lineBottom | 
        
          float: vertical position of the insertion marker, in the local coordinates
 that will be transformed with the transformation matrix when rendered on the screen. This
 should be calculated or compatible with Layout.getLineBottom(int). | 
      
      
        flags | 
        
          int: flags of the insertion marker. See CursorAnchorInfo.FLAG_HAS_VISIBLE_REGION for
 example. | 
      
    
    
 
    setMatrix
    
public CursorAnchorInfo.Builder setMatrix (Matrix matrix)
    
    
    
  Sets the matrix that transforms local coordinates into screen coordinates.
    
    | Parameters | 
      
        matrix | 
        
          Matrix: transformation matrix from local coordinates into screen coordinates. null
 is interpreted as an identity matrix. | 
      
    
    
 
    setSelectionRange
    
public CursorAnchorInfo.Builder setSelectionRange (int newStart, 
                int newEnd)
    
    
    
  Sets the text range of the selection. Calling this can be skipped if there is no
 selection.
    
    | Parameters | 
      
        newStart | 
        
          int  | 
      
      
        newEnd | 
        
          int  | 
      
    
    
 
 
 
  
  
    
  
 
  
    
    
      
       
    
    
  
  
  Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
  Last updated 2025-02-10 UTC.
  
  
  
    
      [null,null,["Last updated 2025-02-10 UTC."],[],[]]