0% found this document useful (0 votes)
10 views

Get Started With Jetpack Compose - Android Developers

Uploaded by

mywire.ac.01
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views

Get Started With Jetpack Compose - Android Developers

Uploaded by

mywire.ac.01
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

Get started with Jetpack

Compose
Jetpack Compose is the modern toolkit for building native Android UI. Here's where you'll
find the latest information about using Compose.

Overview (/develop/ui/compose): See all the resources available to Compose


developers.

Tutorial (/develop/ui/compose/tutorial): Get started with Compose, by using it to build a


simple UI.

Quick Guides (/quick-guides): New! Try out our fast and focused guides, designed to
get you to your goal as quickly as possible.

Foundation
Thinking in Compose (/develop/ui/compose/mental-model): Learn how Compose's
declarative approach is different from the view-based approach you may have used
in the past, and how to build a mental model of working with Compose.

Managing state (/develop/ui/compose/state): Learn about setting and using state in your
Compose app.

Lifecycle of composables (/develop/ui/compose/lifecycle): Learn about the lifecycle of a


composable, and how Compose decides if it needs to be redrawn.

Modifiers (/develop/ui/compose/modifiers): Learn how to use modifiers to augment or


decorate your composables.

Side-effects in Compose (/develop/ui/compose/side-effects): Learn the best ways to


manage side-effects.

Jetpack Compose Phases (/develop/ui/compose/phases): Learn about the steps


Compose goes through to render your UI, and how to use that information to write
efficient code

Architectural layering (/develop/ui/compose/layering): Learn about the architectural


layers that make up Jetpack Compose, and the core principles that informed its
design.
Performance (/develop/ui/compose/performance): Learn how to avoid the common
programming pitfalls that can hurt your app's performance.

Semantics in Compose (/develop/ui/compose/semantics): Learn about the Semantics


tree, which organizes your UI in a way that can be used by accessibility services and
the testing framework.

Locally scoped data with CompositionLocal (/develop/ui/compose/compositionlocal):


Learn how to use CompositionLocal to pass data through the Composition.

Development environment
Android Studio with Compose (/develop/ui/compose/setup): Set up your development
environment to use Compose.

Tooling for Compose (/develop/ui/compose/tooling): Learn about Android Studio's new


features to support Compose.

Kotlin for Compose (/develop/ui/compose/kotlin): Learn how certain Kotlin-specific


idioms work with Compose.

Compare Compose and View metrics (/develop/ui/compose/migrate/compare-metrics):


Learn how migrating to Compose can affect your app's APK size and runtime
performance.

Bill of Materials (/develop/ui/compose/bom): Manage all your Compose dependencies


by specifying only the BOM's version.

Design
Layouts (/develop/ui/compose/layouts): Learn about Compose's native layout
components, and how to design your own.

Layout basics (/develop/ui/compose/layouts/basics): Learn about the building


blocks for a straightforward app UI.

Material Components and layouts (/develop/ui/compose/components): Learn about


Material components and layouts in Compose.

Custom layouts (/develop/ui/compose/layouts/custom): Learn how to take control of


your app's layout, and how to design a custom layout of your own.
Support different screen sizes
(/develop/ui/compose/layouts/adaptive/support-different-screen-sizes): Learn how to
use Compose to build layouts that adapt to different screen sizes,
orientations, and form factors.

Alignment lines (/develop/ui/compose/layouts/alignment-lines): Learn how to create


custom alignment lines to precisely align and position your UI elements.

Intrinsic measurements (/develop/ui/compose/layouts/intrinsic-measurements): Since


Compose only allows you to measure UI elements once per pass, this page
explains how to query for information about child elements before measuring
them.

ConstraintLayout (/develop/ui/compose/layouts/constraintlayout): Learn how to use


ConstraintLayout in your Compose UI.

Design Systems (/develop/ui/compose/designsystems): Learn how to implement a design


system and give your app a consistent look and feel.

Material Design 3 (/develop/ui/compose/designsystems/material3): Learn how to


implement Material You with Compose's implementation of Material Design 3
(https://m3.material.io/).

Migrating from Material 2 to Material 3


(/develop/ui/compose/designsystems/material2-material3): Learn how to migrate your
app from Material Design 2 to Material Design 3 in Compose.

Material Design 2 (/develop/ui/compose/designsystems/material): Learn how to


customize Compose's implementation of Material Design 2 (https://material.io/)
to fit your product's brand.

Custom design systems (/develop/ui/compose/designsystems/custom): Learn how to


implement a custom design system in Compose, and how to adapt existing
Material Design composables to handle this.

Anatomy of a theme (/develop/ui/compose/designsystems/anatomy): Learn about


the lower-level constructs and APIs used by MaterialTheme and custom
design systems.

Lists and grids (/develop/ui/compose/lists): Learn about some of Compose's options for
managing and displaying lists and grids of data.

Text (/develop/ui/compose/text): Learn about Compose's main options for displaying


and editing text.
Graphics (/develop/ui/compose/graphics): Learn about Compose's features for building
and working with custom graphics.

Animation (/develop/ui/compose/animation/introduction): Learn about Compose's


different options for animating your UI elements.

Gestures (/develop/ui/compose/touch-input/pointer-input): Learn how to build a Compose


UI that detects and interacts with user gestures.

Handling user interactions


(/develop/ui/compose/touch-input/user-interactions/handling-interactions): Learn how
Compose abstracts low-level input into higher-level interactions, so you can
customize how your components respond to user actions.

Adopting Compose
Migrate existing View-based apps (/develop/ui/compose/migrate): Learn how to migrate
your existing View-based app to Compose.

Migration strategy (/develop/ui/compose/migrate/strategy): Learn the strategy to


safely and incrementally introduce Compose into your codebase.

Interoperability APIs (/develop/ui/compose/migrate/interoperability-apis): Learn


about Compose's APIs to help you combine Compose with View-based UI.

Other considerations (/develop/ui/compose/migrate/other-considerations): Learn


about other considerations like theming, architecture, and testing while
migrating your View-based app to Compose.

Compose and other libraries (/develop/ui/compose/libraries): Learn how to use view-


based libraries in your Compose content.

Compose architecture (/develop/ui/compose/architecture): Learn how to implement the


unidirectional flow pattern in Compose, how to implement events and state holders,
and how to work with ViewModel in Compose.

Navigation (/develop/ui/compose/navigation): Learn how to use NavController to


integrate the Navigation component with your Compose UI.

Navigation for responsive UIs


(/guide/topics/large-screens/navigation-for-responsive-uis): Learn how to design
your app's navigation so it adapts to different screen sizes, orientations, and
form factors.
Resources (/develop/ui/compose/resources): Learn how to work with your app's
resources in your Compose code.

Accessibility (/develop/ui/compose/accessibility): Learn how to make your Compose UI


suitable for users with different accessibility requirements.

Testing (/develop/ui/compose/testing): Learn about testing your Compose code.

Testing cheat sheet (/develop/ui/compose/testing-cheatsheet): A quick reference of


useful Compose testing APIs.

Additional resources
Get setup (/develop/ui/compose/setup)

Curated learning pathway (/courses/pathways/compose)

Compose API guidelines


(https://android.googlesource.com/platform/frameworks/support/+/androidx-
main/compose/docs/compose-api-guidelines.md)

API reference (/reference/kotlin/androidx/compose)

Codelabs (https://goo.gle/compose-codelabs)

Sample apps (https://github.com/android/compose-samples)

Videos
(https://www.youtube.com/user/androiddevelopers/search?query=%23jetpackcompose)

Content and code samples on this page are subject to the licenses described in the Content License
(/license). Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Last updated 2024-06-13 UTC.

You might also like