Html
  public
  
  
  
  class
  Html
  
    extends Object
  
  
  
  
  
  
| java.lang.Object | |
| ↳ | android.text.Html | 
This class processes HTML strings into displayable styled text. Not all HTML tags are supported.
Summary
Nested classes | |
|---|---|
        
        
        
        
        interface | 
      
        Html.ImageGetter
        Retrieves images for HTML <img> tags.  | 
    
        
        
        
        
        interface | 
      
        Html.TagHandler
        Is notified when HTML tags are encountered that the parser does not know how to interpret.  | 
    
Constants | |
|---|---|
int | 
        
          FROM_HTML_MODE_COMPACT
          Flags for   | 
    
int | 
        
          FROM_HTML_MODE_LEGACY
          Flags for   | 
    
int | 
        
          FROM_HTML_OPTION_USE_CSS_COLORS
          Flag indicating that CSS color values should be used instead of those defined in
   | 
    
int | 
        
          FROM_HTML_SEPARATOR_LINE_BREAK_BLOCKQUOTE
          Flag indicating that texts inside <blockquote> elements will be separated from other texts with one newline character by default.  | 
    
int | 
        
          FROM_HTML_SEPARATOR_LINE_BREAK_DIV
          Flag indicating that texts inside <div> elements will be separated from other texts with one newline character by default.  | 
    
int | 
        
          FROM_HTML_SEPARATOR_LINE_BREAK_HEADING
          Flag indicating that texts inside <h1>~<h6> elements will be separated from other texts with one newline character by default.  | 
    
int | 
        
          FROM_HTML_SEPARATOR_LINE_BREAK_LIST
          Flag indicating that texts inside <ul> elements will be separated from other texts with one newline character by default.  | 
    
int | 
        
          FROM_HTML_SEPARATOR_LINE_BREAK_LIST_ITEM
          Flag indicating that texts inside <li> elements will be separated from other texts with one newline character by default.  | 
    
int | 
        
          FROM_HTML_SEPARATOR_LINE_BREAK_PARAGRAPH
          Flag indicating that texts inside <p> elements will be separated from other texts with one newline character by default.  | 
    
int | 
        
          TO_HTML_PARAGRAPH_LINES_CONSECUTIVE
          Option for   | 
    
int | 
        
          TO_HTML_PARAGRAPH_LINES_INDIVIDUAL
          Option for   | 
    
Public methods | |
|---|---|
        
        
        static
        
        
        String
     | 
  
    
      
      escapeHtml(CharSequence text)
      
      
        Returns an HTML escaped representation of the given plain text.  | 
  
        
        
        static
        
        
        Spanned
     | 
  
    
      
      fromHtml(String source, int flags)
      
      
        Returns displayable styled text from the provided HTML string.  | 
  
        
        
        static
        
        
        Spanned
     | 
  
    
      
      fromHtml(String source, Html.ImageGetter imageGetter, Html.TagHandler tagHandler)
      
      
        
      This method was deprecated
      in API level 24.
    use   | 
  
        
        
        static
        
        
        Spanned
     | 
  
    
      
      fromHtml(String source, int flags, Html.ImageGetter imageGetter, Html.TagHandler tagHandler)
      
      
        Returns displayable styled text from the provided HTML string.  | 
  
        
        
        static
        
        
        Spanned
     | 
  
    
      
      fromHtml(String source)
      
      
        
      This method was deprecated
      in API level 24.
    use   | 
  
        
        
        static
        
        
        String
     | 
  
    
      
      toHtml(Spanned text, int option)
      
      
        Returns an HTML representation of the provided Spanned text.  | 
  
        
        
        static
        
        
        String
     | 
  
    
      
      toHtml(Spanned text)
      
      
        
      This method was deprecated
      in API level 24.
    use   | 
  
Inherited methods | |
|---|---|
Constants
FROM_HTML_MODE_COMPACT
public static final int FROM_HTML_MODE_COMPACT
Flags for fromHtml(java.lang.String, int, android.text.Html.ImageGetter, android.text.Html.TagHandler): Separate block-level
 elements with line breaks (single newline character) in between. This inverts the
 Spanned to HTML string conversion done with the option
 TO_HTML_PARAGRAPH_LINES_INDIVIDUAL.
Constant Value: 63 (0x0000003f)
FROM_HTML_MODE_LEGACY
public static final int FROM_HTML_MODE_LEGACY
Flags for fromHtml(java.lang.String, int, android.text.Html.ImageGetter, android.text.Html.TagHandler): Separate block-level
 elements with blank lines (two newline characters) in between. This is the legacy behavior
 prior to N.
Constant Value: 0 (0x00000000)
FROM_HTML_OPTION_USE_CSS_COLORS
public static final int FROM_HTML_OPTION_USE_CSS_COLORS
Flag indicating that CSS color values should be used instead of those defined in
 Color.
Constant Value: 256 (0x00000100)
FROM_HTML_SEPARATOR_LINE_BREAK_BLOCKQUOTE
public static final int FROM_HTML_SEPARATOR_LINE_BREAK_BLOCKQUOTE
Flag indicating that texts inside <blockquote> elements will be separated from other texts with one newline character by default.
Constant Value: 32 (0x00000020)
FROM_HTML_SEPARATOR_LINE_BREAK_DIV
public static final int FROM_HTML_SEPARATOR_LINE_BREAK_DIV
Flag indicating that texts inside <div> elements will be separated from other texts with one newline character by default.
Constant Value: 16 (0x00000010)
FROM_HTML_SEPARATOR_LINE_BREAK_HEADING
public static final int FROM_HTML_SEPARATOR_LINE_BREAK_HEADING
Flag indicating that texts inside <h1>~<h6> elements will be separated from other texts with one newline character by default.
Constant Value: 2 (0x00000002)
FROM_HTML_SEPARATOR_LINE_BREAK_LIST
public static final int FROM_HTML_SEPARATOR_LINE_BREAK_LIST
Flag indicating that texts inside <ul> elements will be separated from other texts with one newline character by default.
Constant Value: 8 (0x00000008)
FROM_HTML_SEPARATOR_LINE_BREAK_LIST_ITEM
public static final int FROM_HTML_SEPARATOR_LINE_BREAK_LIST_ITEM
Flag indicating that texts inside <li> elements will be separated from other texts with one newline character by default.
Constant Value: 4 (0x00000004)
FROM_HTML_SEPARATOR_LINE_BREAK_PARAGRAPH
public static final int FROM_HTML_SEPARATOR_LINE_BREAK_PARAGRAPH
Flag indicating that texts inside <p> elements will be separated from other texts with one newline character by default.
Constant Value: 1 (0x00000001)
TO_HTML_PARAGRAPH_LINES_CONSECUTIVE
public static final int TO_HTML_PARAGRAPH_LINES_CONSECUTIVE
Option for toHtml(android.text.Spanned, int): Wrap consecutive lines of text delimited by '\n'
 inside <p> elements. BulletSpans are ignored.
Constant Value: 0 (0x00000000)
TO_HTML_PARAGRAPH_LINES_INDIVIDUAL
public static final int TO_HTML_PARAGRAPH_LINES_INDIVIDUAL
Option for toHtml(android.text.Spanned, int): Wrap each line of text delimited by '\n' inside a
 <p> or a <li> element. This allows ParagraphStyles attached to be
 encoded as CSS styles within the corresponding <p> or <li> element.
Constant Value: 1 (0x00000001)
Public methods
escapeHtml
public static String escapeHtml (CharSequence text)
Returns an HTML escaped representation of the given plain text.
| Parameters | |
|---|---|
text | 
        
          CharSequence  | 
      
| Returns | |
|---|---|
String | 
        |
fromHtml
public static Spanned fromHtml (String source, int flags)
Returns displayable styled text from the provided HTML string. Any <img> tags in the HTML will display as a generic replacement image which your program can then go through and replace with real images.
This uses TagSoup to handle real HTML, including all of the brokenness found in the wild.
| Parameters | |
|---|---|
source | 
        
          String  | 
      
flags | 
        
          int  | 
      
| Returns | |
|---|---|
Spanned | 
        |
fromHtml
public static Spanned fromHtml (String source, Html.ImageGetter imageGetter, Html.TagHandler tagHandler)
      This method was deprecated
      in API level 24.
    use fromHtml(java.lang.String, int, android.text.Html.ImageGetter, android.text.Html.TagHandler) instead.
  
Returns displayable styled text from the provided HTML string with the legacy flags
 FROM_HTML_MODE_LEGACY.
| Parameters | |
|---|---|
source | 
        
          String  | 
      
imageGetter | 
        
          Html.ImageGetter  | 
      
tagHandler | 
        
          Html.TagHandler  | 
      
| Returns | |
|---|---|
Spanned | 
        |
fromHtml
public static Spanned fromHtml (String source, int flags, Html.ImageGetter imageGetter, Html.TagHandler tagHandler)
Returns displayable styled text from the provided HTML string. Any <img> tags in the HTML will use the specified ImageGetter to request a representation of the image (use null if you don't want this) and the specified TagHandler to handle unknown tags (specify null if you don't want this).
This uses TagSoup to handle real HTML, including all of the brokenness found in the wild.
| Parameters | |
|---|---|
source | 
        
          String  | 
      
flags | 
        
          int  | 
      
imageGetter | 
        
          Html.ImageGetter  | 
      
tagHandler | 
        
          Html.TagHandler  | 
      
| Returns | |
|---|---|
Spanned | 
        |
fromHtml
public static Spanned fromHtml (String source)
      This method was deprecated
      in API level 24.
    use fromHtml(java.lang.String, int) instead.
  
Returns displayable styled text from the provided HTML string with the legacy flags
 FROM_HTML_MODE_LEGACY.
| Parameters | |
|---|---|
source | 
        
          String  | 
      
| Returns | |
|---|---|
Spanned | 
        |
toHtml
public static String toHtml (Spanned text, int option)
Returns an HTML representation of the provided Spanned text. A best effort is made to add HTML tags corresponding to spans. Also note that HTML metacharacters (such as "<" and "&") within the input text are escaped.
| Parameters | |
|---|---|
text | 
        
          Spanned: input text to convert | 
      
option | 
        
          int: one of TO_HTML_PARAGRAPH_LINES_CONSECUTIVE or
     TO_HTML_PARAGRAPH_LINES_INDIVIDUAL | 
      
| Returns | |
|---|---|
String | 
        string containing input converted to HTML | 
toHtml
public static String toHtml (Spanned text)
      This method was deprecated
      in API level 24.
    use toHtml(android.text.Spanned, int) instead.
  
| Parameters | |
|---|---|
text | 
        
          Spanned  | 
      
| Returns | |
|---|---|
String | 
        |
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.