Jetpack Compose is a modern Android UI toolkit that simplifies UI development on the Android platform. Here is a list of some commonly used Jetpack Compose UI components as of my last knowledge update in September 2021. Please note that Jetpack Compose evolves rapidly, and there may have been additions or changes since then.
-
Text:
Text
composable is used to display text on the screen. It supports various text styling options. -
TextField:
TextField
allows users to input text. It's often used for forms and user input. -
Button:
Button
composable creates interactive buttons with customizable text and click behavior. -
Image:
Image
composable displays images in your app. It supports various image sources and content modes. -
Column:
Column
is a composable that arranges its children vertically, one after another. -
Row:
Row
is a composable that arranges its children horizontally, side by side. -
Box:
Box
is a versatile composable for creating complex layouts and applying transformations. -
Spacer:
Spacer
is a simple composable used for adding space between other composables. -
Surface:
Surface
is used for theming and applying background colors to composables. -
Card:
Card
is a material design component used for displaying content in a contained, elevated box. -
AlertDialog:
AlertDialog
displays a modal dialog with a title, message, and customizable buttons. -
Snackbar:
Snackbar
displays a brief message at the bottom of the screen. -
BottomSheet:
BottomSheet
creates a modal bottom sheet that slides up from the bottom of the screen. -
Drawer:
Drawer
is used to create a navigation drawer that slides in from the edge of the screen. -
TopAppBar:
TopAppBar
is a top app bar for navigation and actions. -
FloatingActionButton:
FloatingActionButton
creates a button for primary actions. -
Navigation: Jetpack Compose includes a navigation component for managing navigation between composables.
-
LazyColumn:
LazyColumn
is a vertically scrolling list that loads items on-demand, suitable for long lists. -
LazyRow:
LazyRow
is a horizontally scrolling list that loads items on-demand. -
TabRow:
TabRow
is used for creating tabs in your app. -
CheckBox:
CheckBox
creates a checkbox for selecting options. -
RadioButton:
RadioButton
is used to select a single option from a group of options. -
Switch:
Switch
creates an on/off switch. -
ProgressIndicator:
ProgressIndicator
displays various types of progress indicators, such as circular or linear. -
Slider:
Slider
allows users to select a value from a range by sliding a thumb. -
DatePicker:
DatePicker
displays a date picker dialog. -
TimePicker:
TimePicker
displays a time picker dialog. -
VideoView:
VideoView
is used for displaying videos in your app. -
WebView:
WebView
integrates a web browser view into your app. -
Canvas:
Canvas
provides a drawing surface for creating custom graphics. -
Gesture Detection: Composables like
Modifier.clickable
andModifier.swipeable
enable gesture recognition. -
Animation: Jetpack Compose provides tools for creating animations, including
animate*
modifiers. -
Accessibility: Composables support accessibility features with
Modifier.semantics
and related APIs.
Please keep in mind that Jetpack Compose is actively developed, and new features and components may have been added since my last knowledge update. It's essential to refer to the official Android documentation and release notes for the most up-to-date information on Jetpack Compose components and best practices.
Text | Row & Column | Box & Button |
---|---|---|
Card & Image | LazyColumn & LazyRow | TextField (EditText) |
---|---|---|
Text Marquee | Splash Screen | AlertDialog |
---|---|---|
Scaffold | TopAppBar | BottomAppBar |
---|---|---|
FloatingActionButton | Snackbar | Switch |
---|---|---|
ToolTips | ToolTip | CheckBox |
---|---|---|
Chips | Custom Alert | Spacers |
---|---|---|
Divider | Dashed Divider | DropDown Menu |
---|---|---|
IconButton | State Mangement | Navigation Drawer |
---|---|---|
Custom Lists | Grid Lists | Bottom Sheets |
---|---|---|
Bottom Navigation Bar | Bottom Navigation Bar With Badge | Animated BottomNavigationBar |
---|---|---|
Tabs Layout using TabRow | Tabs Layout With Pages | Custom Horizontal Pager |
---|---|---|
Animation in Jetpack compose | DatePicker | TimePicker |
---|---|---|