با Jetpack Compose شروع کنید
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
Jetpack Compose ابزار مدرنی برای ایجاد رابط کاربری بومی اندروید است. در اینجا آخرین اطلاعات در مورد استفاده از Compose را خواهید یافت.
- نمای کلی : همه منابع موجود برای توسعه دهندگان Compose را ببینید.
- آموزش : با استفاده از Compose برای ایجاد یک رابط کاربری ساده با Compose شروع کنید.
- راهنماهای سریع : جدید! راهنماهای سریع و متمرکز ما را که برای رساندن شما به هدفتان در سریع ترین زمان ممکن طراحی شده اند، امتحان کنید.
بنیاد
- Thinking in Compose : بیاموزید که چگونه رویکرد اعلامی Compose با رویکرد مبتنی بر دیدگاه که ممکن است در گذشته استفاده میکردید متفاوت است و چگونه یک مدل ذهنی از کار با Compose ایجاد کنید.
- مدیریت وضعیت : درباره تنظیم و استفاده از وضعیت در برنامه Compose خود بیاموزید.
- چرخه حیات اجزای ترکیبپذیر : درباره چرخه حیات یک ترکیبسازی و نحوه تصمیمگیری Compose درباره نیاز به ترسیم مجدد آن اطلاعات کسب کنید.
- اصلاحکنندهها : یاد بگیرید که چگونه از اصلاحکنندهها برای تقویت یا تزئین مواد ترکیبی خود استفاده کنید.
- عوارض جانبی در نوشتن : بهترین راههای مدیریت عوارض جانبی را بیاموزید.
- مراحل نوشتن Jetpack : با مراحلی که Compose برای رندر کردن رابط کاربری خود طی می کند و نحوه استفاده از آن اطلاعات برای نوشتن کد کارآمد آشنا شوید.
- لایهبندی معماری : درباره لایههای معماری سازنده Jetpack Compose و اصول اصلی که طراحی آن را تشکیل میدهند، بیاموزید.
- عملکرد : بیاموزید که چگونه از مشکلات برنامه نویسی رایج که می تواند به عملکرد برنامه شما آسیب برساند، اجتناب کنید.
- Semantics in Compose : درباره درخت Semantics بیاموزید، که رابط کاربری شما را به گونهای سازماندهی میکند که بتواند توسط سرویسهای دسترسی و چارچوب آزمایشی استفاده شود.
- دادههای محدوده محلی با CompositionLocal : یاد بگیرید که چگونه از
CompositionLocal
برای انتقال دادهها از طریق Composition استفاده کنید.
محیط توسعه
طراحی
- Layouts : درباره اجزای طرحبندی اصلی Compose و نحوه طراحی طرحبندی خود بیاموزید.
- اصول چیدمان : در مورد بلوک های سازنده یک رابط کاربری ساده برنامه بیاموزید.
- اجزای متریال و طرحبندی : در Compose با اجزای متریال و طرحبندی آشنا شوید.
- طرحبندیهای سفارشی : بیاموزید که چگونه طرحبندی برنامه خود را کنترل کنید، و چگونه طرحبندی سفارشی خود را طراحی کنید.
- پشتیبانی از اندازههای مختلف نمایشگر : نحوه استفاده از Compose را برای ایجاد طرحبندیهایی که با اندازههای نمایشگر، جهتگیریها و فاکتورهای فرم متفاوت سازگار هستند را بیاموزید.
- خطوط تراز : نحوه ایجاد خطوط تراز سفارشی برای تراز کردن و قرار دادن دقیق عناصر UI خود را بیاموزید.
- اندازهگیریهای ذاتی : از آنجایی که Compose فقط به شما امکان میدهد تا عناصر رابط کاربری را یک بار در هر پاس اندازهگیری کنید، این صفحه نحوه جستجوی اطلاعات در مورد عناصر فرزند را قبل از اندازهگیری توضیح میدهد.
- ConstraintLayout : با نحوه استفاده از
ConstraintLayout
در Compose UI خود آشنا شوید.
- سیستم های طراحی : یاد بگیرید که چگونه یک سیستم طراحی را پیاده سازی کنید و به برنامه خود ظاهر و احساسی ثابت بدهید.
- فهرستها و شبکهها : درباره برخی از گزینههای Compose برای مدیریت و نمایش فهرستها و شبکههای داده اطلاعات کسب کنید.
- متن : با گزینه های اصلی Compose برای نمایش و ویرایش متن آشنا شوید.
- گرافیک : با ویژگی های Compose برای ساخت و کار با گرافیک های سفارشی آشنا شوید.
- انیمیشن : درباره گزینه های مختلف Compose برای متحرک سازی عناصر UI خود بیاموزید.
- حرکات : یاد بگیرید که چگونه یک رابط کاربری Compose بسازید که حرکات کاربر را شناسایی کرده و با آن در تعامل است.
- مدیریت تعاملات کاربر : بیاموزید که چگونه Compose ورودی های سطح پایین را در تعاملات سطح بالاتر خلاصه می کند، بنابراین می توانید نحوه واکنش اجزای خود را به اقدامات کاربر سفارشی کنید.
پذیرش نوشتن
- انتقال برنامههای مبتنی بر View موجود : با نحوه انتقال برنامه مبتنی بر View موجود به Compose آشنا شوید.
- استراتژی مهاجرت : استراتژی را بیاموزید تا Compose را به صورت ایمن و تدریجی در پایگاه کد خود وارد کنید.
- APIهای تعاملی : با APIهای Compose آشنا شوید تا به شما کمک کنند Compose را با UI مبتنی بر View ترکیب کنید.
- ملاحظات دیگر : در حین انتقال برنامه مبتنی بر View خود به Compose، با ملاحظات دیگری مانند طرح زمینه، معماری و آزمایش آشنا شوید.
- نوشتن و سایر کتابخانهها : نحوه استفاده از کتابخانههای مبتنی بر مشاهده را در محتوای Compose خود بیاموزید.
- معماری Compose : نحوه پیادهسازی الگوی جریان یک جهته در Compose، نحوه پیادهسازی رویدادها و دارندگان حالت، و نحوه کار با
ViewModel
در Compose را بیاموزید. - ناوبری : نحوه استفاده از
NavController
برای ادغام مولفه Navigation با Compose UI خود بیاموزید. - منابع : نحوه کار با منابع برنامه خود را در کد نوشتن بیاموزید.
- دسترسپذیری : بیاموزید که چگونه رابط کاربری Compose خود را برای کاربرانی با شرایط دسترسی متفاوت مناسب کنید.
- تست : درباره آزمایش کد نوشتن خود بیاموزید.
منابع اضافی
{% کلمه به کلمه %}
{% آخر کلمه %} برای شما توصیه می شود
{% کلمه به کلمه %} {% آخر کلمه %}
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-08-27 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2025-08-27 بهوقت ساعت هماهنگ جهانی."],[],[],null,["Jetpack Compose is the modern toolkit for building native Android UI. Here's\nwhere you'll find the latest information about using Compose.\n\n- [Overview](/develop/ui/compose): See all the resources available to Compose developers.\n- [Tutorial](/develop/ui/compose/tutorial): Get started with Compose, by using it to build a simple UI.\n- [Quick Guides](/quick-guides): **New!** Try out our fast and focused guides, designed to get you to your goal as quickly as possible.\n\nFoundation\n\n- [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.\n- [Managing state](/develop/ui/compose/state): Learn about setting and using state in your Compose app.\n- [Lifecycle of composables](/develop/ui/compose/lifecycle): Learn about the lifecycle of a composable, and how Compose decides if it needs to be redrawn.\n- [Modifiers](/develop/ui/compose/modifiers): Learn how to use modifiers to augment or decorate your composables.\n- [Side-effects in Compose](/develop/ui/compose/side-effects): Learn the best ways to manage side-effects.\n- [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\n- [Architectural layering](/develop/ui/compose/layering): Learn about the architectural layers that make up Jetpack Compose, and the core principles that informed its design.\n- [Performance](/develop/ui/compose/performance): Learn how to avoid the common programming pitfalls that can hurt your app's performance.\n- [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.\n- [Locally scoped data with CompositionLocal](/develop/ui/compose/compositionlocal): Learn how to use `CompositionLocal` to pass data through the Composition.\n\nDevelopment environment\n\n- [Android Studio with Compose](/develop/ui/compose/setup): Set up your development environment to use Compose.\n- [Tooling for Compose](/develop/ui/compose/tooling): Learn about Android Studio's new features to support Compose.\n- [Kotlin for Compose](/develop/ui/compose/kotlin): Learn how certain Kotlin-specific idioms work with Compose.\n- [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.\n- [Bill of Materials](/develop/ui/compose/bom): Manage all your Compose dependencies by specifying only the BOM's version.\n\nDesign\n\n- [Layouts](/develop/ui/compose/layouts): Learn about Compose's native layout components, and how to design your own.\n - [Layout basics](/develop/ui/compose/layouts/basics): Learn about the building blocks for a straightforward app UI.\n - [Material Components and layouts](/develop/ui/compose/components): Learn about Material components and layouts in Compose.\n - [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.\n - [Support different display sizes](/develop/ui/compose/layouts/adaptive/support-different-display-sizes): Learn how to use Compose to build layouts that adapt to different display sizes, orientations, and form factors.\n - [Alignment lines](/develop/ui/compose/layouts/alignment-lines): Learn how to create custom alignment lines to precisely align and position your UI elements.\n - [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.\n - [ConstraintLayout](/develop/ui/compose/layouts/constraintlayout): Learn how to use `ConstraintLayout` in your Compose UI.\n- [Design Systems](/develop/ui/compose/designsystems): Learn how to implement a design system and give your app a consistent look and feel.\n - [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/).\n - [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.\n - [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.\n - [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.\n - [Anatomy of a theme](/develop/ui/compose/designsystems/anatomy): Learn about the lower-level constructs and APIs used by `MaterialTheme` and custom design systems.\n- [Lists and grids](/develop/ui/compose/lists): Learn about some of Compose's options for managing and displaying lists and grids of data.\n- [Text](/develop/ui/compose/text): Learn about Compose's main options for displaying and editing text.\n- [Graphics](/develop/ui/compose/graphics): Learn about Compose's features for building and working with custom graphics.\n- [Animation](/develop/ui/compose/animation/introduction): Learn about Compose's different options for animating your UI elements.\n- [Gestures](/develop/ui/compose/touch-input/pointer-input): Learn how to build a Compose UI that detects and interacts with user gestures.\n- [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.\n\nAdopting Compose\n\n- [Migrate existing View-based apps](/develop/ui/compose/migrate): Learn how to migrate your existing View-based app to Compose.\n - [Migration strategy](/develop/ui/compose/migrate/strategy): Learn the strategy to safely and incrementally introduce Compose into your codebase.\n - [Interoperability APIs](/develop/ui/compose/migrate/interoperability-apis): Learn about Compose's APIs to help you combine Compose with View-based UI.\n - [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.\n- [Compose and other libraries](/develop/ui/compose/libraries): Learn how to use view-based libraries in your Compose content.\n- [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.\n- [Navigation](/develop/ui/compose/navigation): Learn how to use `NavController` to integrate the Navigation component with your Compose UI.\n - [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.\n- [Resources](/develop/ui/compose/resources): Learn how to work with your app's resources in your Compose code.\n- [Accessibility](/develop/ui/compose/accessibility): Learn how to make your Compose UI suitable for users with different accessibility requirements.\n- [Testing](/develop/ui/compose/testing): Learn about testing your Compose code.\n - [Testing cheat sheet](/develop/ui/compose/testing-cheatsheet): A quick reference of useful Compose testing APIs.\n\nAdditional resources\n\n- [Get setup](/develop/ui/compose/setup)\n- [Curated learning pathway](/courses/pathways/compose)\n- [Compose API guidelines](https://android.googlesource.com/platform/frameworks/support/+/androidx-main/compose/docs/compose-api-guidelines.md)\n- [API reference](/reference/kotlin/androidx/compose)\n- [Codelabs](https://goo.gle/compose-codelabs)\n- [Sample apps](https://github.com/android/compose-samples)\n- [Videos](https://www.youtube.com/user/androiddevelopers/search?query=%23jetpackcompose)\n\nRecommended for you\n\n- Note: link text is displayed when JavaScript is off\n- [Locally scoped data with CompositionLocal](/develop/ui/compose/compositionlocal)\n- [Other considerations](/develop/ui/compose/migrate/other-considerations)\n- [Anatomy of a theme in Compose](/develop/ui/compose/designsystems/anatomy)"]]