> For the complete documentation index, see [llms.txt](https://docs.apryse.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.apryse.com/android/ui-customization/components-overview.md).

# UI components

Discover the Apryse Android SDK with a powerful document reader and PDF editor featuring Material Design UI components. Learn how to enhance your app's UI for interactive document viewing. The Apryse

The highly configurable [all-in-one document reader and PDF editor](/android/viewer/viewer-overview.md) that comes with the Apryse Android SDK is composed of Material Design UI components that are available in the tools package. These components can be used as part of your application to create customizable UI that interact with the document viewer. A visual reference for these components is shown below:

![](https://226546913-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0QItsdFBmuuL9ezHimHy%2Fuploads%2Fgit-blob-299c202d34a55206d737abe1789731b5de80d406%2Fd27d5b525139e247f360f1daeb75d267aaf3e00b-4000x2220.png?alt=media)

| Key | UI Component                                                             | Description                                                                                                                                       |
| --- | ------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| 1   | [PDFViewCtrl](/android/open-save-document/open.md)                       | PDFViewCtrl is a ViewGroup that can be embedded in any layout. It encapsulates a rich set of functionalities for interactive viewing of documents |
| 2   | Toolbar Switcher                                                         | Allows users to switch between annotation toolbars and access different tools                                                                     |
| 3   | Tab Switcher                                                             | View the previews of multiple documents as tabs                                                                                                   |
| 4   | [View mode dialog](/android/viewer/view-mode.md)                         | Allows users to: pick page presentation mode, select page color mode, rotate pages, and crop pages                                                |
| 4   | [Crop pages dialog](/android/open-save-document/basics/crop-pages.md)    | Manually or automatically crop pages in a document                                                                                                |
| 4   | [Reflow](/android/viewer/view-mode.md)                                   | Extract the reflowable layout of each page in a document to an HTML file                                                                          |
| 4   | [Add pages dialog](/android/page-manipulation/create.md)                 | Add new pages to an existing document or create a new document with new pages                                                                     |
| 4   | [Rotate pages dialog](/android/page-manipulation/rotate.md#ui-component) | Rotate pages of the opened document by 90, 180 and 270 degrees                                                                                    |
| 4   | Share document                                                           | Share a document from your app                                                                                                                    |
| 5   | [Thumbnail browser](/android/page-manipulation/thumbnails-view-a.md)     | Edit pages of a document including add, remove, re-arrange, rotate and duplicate pages                                                            |
| 6   | [Text search](/android/search/text.md)                                   | Search text in a document                                                                                                                         |
| 7   | [Reader mode](/android/viewer/view-mode.md#reflow)                       | Strips down the UI so that users can focus on reading a document's content                                                                        |
| 8   | List container                                                           | A horizontal layout to display the Annotation list, Document outline, and User-defined bookmark list in separate tabs                             |
| 8   | [Annotation list](/android/annotation/annotation-list-a.md)              | Shows a list of all annotations in a document                                                                                                     |
| 8   | [Document outline](/android/bookmarks/outline.md)                        | Shows a document outline (PDF Bookmark) that can be used to navigate the document                                                                 |
| 8   | [User bookmark list](/android/bookmarks/user-bookmarks-a.md)             | Shows a list of user-defined bookmarks that can be used to navigate the document                                                                  |
| 9   | [Annotation toolbar](/android/annotation/annotation-toolbar-a.md)        | A toolbar consisting of various annotation creation tools                                                                                         |
| 10  | [Quick menu](/android/ui-customization/quick-menu.md)                    | A convenient annotation popup menu that appears when a user long-presses on a blank space or on text, or presses an annotation                    |
| 11  | [Annotation style editor](/android/annotation/style-editor-dialog.md)    | Displays annotation style properties in a bottom sheet for the user to edit                                                                       |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.apryse.com/android/ui-customization/components-overview.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
