Canonical widget layouts
Stay organized with collections
Save and categorize content based on your preferences.
Craft effective widget layouts by first identifying your core content. Your
layout dictates how information and interactive elements are organized within
your widget. Android offers several pre-built layouts for text, list and
grid-type widgets to streamline this process.
Text
Text layouts are ideal for displaying concise information. Enhance the visual
appeal of your widget by optionally including an image alongside the text.
Text only
Ideal for titles, status updates, short descriptions, or any scenario
where a single line of text effectively conveys the message. Refer to the
Canonical layout sample
for guidance on dynamically scaling text content based on widget size.
Text and image
Include an image for added visual impact. For more information, see
Breakpoints
to learn how to adapt this layout for different screen sizes.
Lists
Use list layouts to organize multiple items in a clear, scannable format. This
is ideal for news headlines, to-do lists or messages. Organize content into a
structured, easily scannable list. Choose between containerized or containerless
presentation based on your content needs.
Text and image list
Easily scannable text and image lists are perfect for showcasing multiple
content types, such as news headlines, playlists with album art, or
messages.
Checklist
The checklist layout is perfect for displaying tasks, providing clear tap
targets for users to easily mark items as done.
Action list
Provide intuitive control grouping with action lists, where visual on/off
states offer immediate feedback on item statuses.
Grid
Present images in a compact, flexible, visually rich grid with optional labels.
Use columns and rows that adapt to different screen sizes.
Image only
Create visually impactful, scrollable image galleries using image-only
grids. Rows and columns automatically adapt to various screen sizes for
optimal presentation.
Image and text
You can also incorporate text labels and descriptions, enriching your
image grid content with additional context and information.
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 2024-09-23 UTC.
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"Missing the information I need"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"Too complicated / too many steps"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"Out of date"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"Samples / code issue"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Other"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Easy to understand"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Solved my problem"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Other"
}]
{"lastModified": "Last updated 2024-09-23 UTC."}
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-09-23 UTC."]]