יצירת חומר לימוד 3

פיתוח ממשקי משתמש של Jetpack Compose באמצעות רכיבי Material Design 3, הגרסה הבאה של Material Design. Material 3 כולל רכיבים ועיצוב נושאים מעודכנים ותכונות של התאמה אישית של Material You, כמו צבעים דינמיים. הוא תוכנן כך שיהיה עקבי עם הסגנון החזותי החדש של Android 12 וממשק המשתמש של המערכת.
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסה אלפא
13 בנובמבר 2024 1.3.1 - - 1.4.0-alpha04

מבנה

Compose הוא שילוב של שבעה מזהי קבוצות Maven ב-androidx. כל קבוצה מכילה קבוצת משנה ממוקדת של פונקציונליות, עם הערות משלה לגבי הגרסה.

בטבלה הזו מוסבר על הקבוצות ומוצגים קישורים לכל קבוצה של הערות המוצר.

קיבוץתיאור
compose.animationפיתוח אנימציות באפליקציות שלהם ב-Jetpack Compose כדי להעשיר את חוויית המשתמש.
compose.compilerשינוי פונקציות עם @Composable והפעלת אופטימיזציות באמצעות פלאגין של קומפילר Kotlin.
compose.foundationכתיבת אפליקציות ב-Jetpack Compose באמצעות אבני בניין מוכנות לשימוש והרחבת הבסיס כדי ליצור רכיבים משלכם של מערכת עיצוב.
compose.materialפיתוח ממשקי משתמש של Jetpack Compose באמצעות רכיבי Material Design מוכנים לשימוש. זוהי נקודת הכניסה ברמה הגבוהה יותר של Compose, שנועדה לספק רכיבים שתואמים לאלה שמתוארים בכתובת www.material.io.
compose.material3פיתוח ממשקי משתמש של Jetpack Compose באמצעות רכיבי Material Design 3, הגרסה הבאה של Material Design. Material 3 כולל רכיבים ועיצוב נושאים מעודכנים ותכונות של התאמה אישית של Material You, כמו צבעים דינמיים. הוא תוכנן כך שיהיה עקבי עם הסגנון החזותי החדש של Android 12 וממשק המשתמש של המערכת.
compose.runtimeאבני בניין בסיסיות של מודל התכנות ושל ניהול המצב ב-Compose, וזמן ריצה ליבה שאליו פונה הפלאגין של Compose Compiler.
compose.uiרכיבים בסיסיים של ממשק המשתמש של Compose שנדרשים כדי לקיים אינטראקציה עם המכשיר, כולל פריסה, ציור והזנה.

הצהרת יחסי תלות

כדי להוסיף תלות ב-Compose, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאגר Maven של Google.

מוסיפים את יחסי התלות של הארטיפקטים הנדרשים בקובץ build.gradle של האפליקציה או המודול:

Groovy

dependencies {
    implementation "androidx.compose.material3:material3:1.3.1"
    implementation "androidx.compose.material3:material3-window-size-class:1.3.1"
    implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha04"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

dependencies {
    implementation("androidx.compose.material3:material3:1.3.1")
    implementation("androidx.compose.material3:material3-window-size-class:1.3.1")
    implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha04")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ל-build.

משוב

המשוב שלכם עוזר לנו לשפר את Jetpack. אם נתקלתם בבעיות חדשות או שיש לכם רעיונות לשיפור הספרייה הזו, נשמח לשמוע מכם. לפני שיוצרים בעיה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להצביע על בעיה קיימת, לוחצים על לחצן הכוכב.

דיווח על בעיה חדשה

מידע נוסף זמין במסמכי התיעוד של Issue Tracker.

Compose Material3 Common Version 1.0

גרסה 1.0.0-alpha01

17 באפריל 2024

התכונות androidx.compose.material3:material3-common:1.0.0-alpha01, androidx.compose.material3:material3-common-android:1.0.0-alpha01 וגם androidx.compose.material3:material3-common-desktop:1.0.0-alpha01 משוחררות. גרסת 1.0.0-alpha01 כוללת את ההוספות האלה.

תכונות חדשות

רכיבים ללא עיצוב שאפשר להשתמש בהם כדי ליצור רכיבים של Material Design:

Compose Material3 Adaptive Navigation Suite Version 1.0

גרסה 1.0.0-alpha07

1 במאי 2024

התכונות androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07 וגם androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07 משוחררות. הגרסה 1.0.0-alpha07 מכילה את ההוספות האלה.

שינויים ב-API

  • שינוי הסטטוס של ממשקי ה-API של חבילת הניווט ל'לא ניסיוניים' (If62af)

תיקוני באגים

  • צריכת תצוגות מוטמעות של תוכן כברירת מחדל (50266df)

גרסה 1.0.0-alpha06

17 באפריל 2024

התכונות androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06 וגם androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06 משוחררות. הגרסה 1.0.0-alpha06 מכילה את ההוספות האלה.

שינויים ב-API

  • מוסיפים את containerColor ו-contentColor ל-NavigationSuiteScaffoldDefaults. (I64e3a, ‏ b/331993720)
  • הוספת הפונקציה itemColors ל-NavigationSuiteDefaults. (Idf719, ‏ b/328480012)
  • מגדירים את NavigationSuiteScope כסגור. (Iefa57)

גרסה 1.0.0-alpha05

6 במרץ 2024

התכונות androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05 וגם androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05 משוחררות. גרסת 1.0.0-alpha05 מכילה את ההוספות האלה.

שינויים ב-API

  • הופכים את המבנה של NavigationSuiteItemColors לציבורי. (Ica83a, ‏ b/324886877)

גרסה 1.0.0-alpha04

21 בפברואר 2024

התכונות androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04 וגם androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04 משוחררות. גרסה 1.0.0-alpha04 מכילה את ההצהרות האלה על ביצוע שינויים (commits).

עדכוני יחסי תלות

  • מעדכנים את יחסי התלות ההסתגלותיים של Material3 לנתיבי המודול החדשים. (Ibc421)
  • מעבר לשימוש בגרסה של Window Manager של כיתות גודל חלון. (I3794d)

גרסה 1.0.0-alpha03

7 בפברואר 2024

התכונות androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha03, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha03 וגם androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha03 משוחררות. גרסה 1.0.0-alpha03 כוללת את ההצהרות האלה.

שינויים ב-API

  • עדכון שם החבילה ל-navigationsuite מ-navigation-suite (I7eff7)
  • רכיבי Material3 שחשפו MutableInteractionSource ב-API שלהם עודכנו כך שיחשפו עכשיו MutableInteractionSource שאפשר להעביר לו ערך null, שמוגדר כברירת מחדל לערך null. אין כאן שינויים סמנטיים: העברת null פירושה שאתם לא רוצים להעביר את MutableInteractionSource, והוא ייווצר בתוך הרכיב במקרה הצורך. שינוי ל-null מאפשר לרכיבים מסוימים לא להקצות אף פעם MutableInteractionSource, ולרכיבים אחרים ליצור מופע רק באופן עצלני כשהם צריכים, וכך לשפר את הביצועים של הרכיבים האלה. אם אתם לא משתמשים ב-MutableInteractionSource שאתם מעבירים לרכיבים האלה, מומלץ להעביר null במקום זאת. מומלץ גם לבצע שינויים דומים ברכיבים שלכם. (I41abb, ‏ b/298048146)

גרסה 1.0.0-alpha02

13 בדצמבר 2023

התכונות androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02 וגם androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02 משוחררות. גרסה 1.0.0-alpha02 מכילה את ההצהרות האלה.

תכונות חדשות

תיקוני באגים

  • תיקון רכיב הניווט שממלא את המסך כולו כשיש modifier.fillMaxSize בשטח הבסיס. (c9cf250, ‏ b/312664933)

גרסה 1.0.0-alpha01

15 בנובמבר 2023

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha01 משוחרר. גרסה 1.0.0-alpha01 מכילה את ההצהרות האלה.

תכונות חדשות

Compose Material3 Adaptive גרסה 1.0

גרסה 1.0.0-alpha06

7 בפברואר 2024

התכונות androidx.compose.material3:material3-adaptive:1.0.0-alpha06, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha06 וגם androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha06 משוחררות. גרסה 1.0.0-alpha06 מכילה את ההוספות האלה.

תכונות חדשות

  • נוספו אפשרויות התנהגות נוספות לניווט לאחור ב-ThreePaneScaffoldNavigator. (I858aa)
  • התוכן האופציונלי של היעד נוסף להיסטוריית הניווט. (Ibd7e6)

גרסה 1.0.0-alpha05

24 בינואר 2024

התכונות androidx.compose.material3:material3-adaptive:1.0.0-alpha05, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha05 וגם androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha05 משוחררות. גרסה 1.0.0-alpha05 מכילה את ההוספות האלה.

תכונות חדשות

  • תמיכה במודעות להיסטוריה בניווט בתבנית ובחישוב הערכים (I71d46)

גרסה 1.0.0-alpha04

10 בינואר 2024

התכונות androidx.compose.material3:material3-adaptive:1.0.0-alpha04, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha04 וגם androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha04 משוחררות. גרסה 1.0.0-alpha04 מכילה את ההצהרות האלה על ביצוע שינויים (commits).

תכונות חדשות

  • הוספנו תמיכה מקצה לקצה ב-scaffolds של חלונות (I1b462)

שינויים ב-API

  • הועברו מאפייני גבולות ציר ב'תנוחה' לרשימה של פרטי ציר (I24f90)

תיקוני באגים

  • התיקון AnimatedPane לא עובר עיבוד מחדש (c3f573d)

גרסה 1.0.0-alpha03

13 בדצמבר 2023

התכונות androidx.compose.material3:material3-adaptive:1.0.0-alpha03, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha03 וגם androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03 משוחררות. גרסה 1.0.0-alpha03 כוללת את ההצהרות האלה.

שינויים ב-API

  • משנים את התפקידים של ה-scaffold לכינויים של ThreePaneScaffoldRole. (I65bd1)
  • יצירת סיווג בסיס לתפקידי תבנית (I4784d)
  • הסרת פרמטר מיותר מהתוכן של AnimatedPane (Ibc73b)
  • שינוי השם של collectWindowSizeAsState והחזרת ערכים גולמיים במקום זאת (I480f4)

גרסה 1.0.0-alpha02

29 בנובמבר 2023

התכונות androidx.compose.material3:material3-adaptive:1.0.0-alpha02, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha02 וגם androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02 משוחררות. גרסה 1.0.0-alpha02 מכילה את ההצהרות האלה.

שינויים ב-API

  • הפרדת ממשקי API לניווט ממשקי API של תבניות עזר מותאמות. (Ic4045)
  • מסירים את הכיתה GutterSize. (I785b3)

תיקוני באגים

  • החלונות הקבועים לא עוברים שינוי כשלא משתמשים ב-AnimatedPane (d88f181)

גרסה 1.0.0-alpha01

15 בנובמבר 2023

androidx.compose.material3:material3-adaptive:1.0.0-alpha01 משוחרר. גרסה 1.0.0-alpha01 מכילה את ההצהרות האלה.

תכונות חדשות

ממשקי API של תנאים מותאמים אישית של Material3:

ממשקי API של הוראות למבנה תומך של חלונית אדפטיבית של Material3:

ממשקי API של תבנית עזרה לחלונית דינמית של Material3:

Compose Material3 גרסה 1.4

גרסה 1.4.0-alpha04

13 בנובמבר 2024

androidx.compose.material3:material3-*:1.4.0-alpha04 משוחרר. גרסת 1.4.0-alpha04 מכילה את ההוספות האלה.

שינויים בהתנהגות

  • החזרת שינויי הצבע שהוצגו ב-aosp/3212478 ל-iconButtonColors, ל-iconToggleButtonColors, ל-outlinedIconButtonColors, ל-outlinedIconToggleButtonColors ול-outlinedIconToggleButtonBorder. העברנו את ההתנהגות שהוחזרה לקבוצה חדשה של פונקציות שנקראת iconButtonVibrantColors וכן הלאה, כדי להדגיש את צבעי הניגודיות הגבוהה שמוחזרים. (Iffd8d)

תכונות חדשות

  • הצגת הרכיב VerticalDragHandle (I6c770)

שינויים ב-API

  • משנים את השם של DismissibleModalWideNavigationRailDefaults ל-ModalWideNavigationRailDefaults. (I8e877)
  • מוסיפים את NavigationBarComponentOverrides. (I8a3f3)
  • מוסיפים את NavigationRailComponentOverride. (I83e13)
  • מוסיפים את WideNavigationRailState כדי לטפל בכיווץ/הרחבה של המסילה, מאפשרים לסגור את ModalWideNavigationRail ומוחקים את DismissibleModalWideNavigationRail. (I88568)
  • מוסיפים ערכי ברירת מחדל בגדלים xSmall,‏ medium,‏ large ו-xLarge לערכי ברירת המחדל של לחצן החלפת המצב. (Ie95d1)
  • מוסיפים ברירת מחדל לגודל xSmall,‏ medium,‏ large ו-xLarge לברירת המחדל של הלחצן. (If8b6d)

תיקוני באגים

  • הצבע של הסמל העוקב אחרי סמל המסנן עודכן מצבע ראשי לצבע OnSurfaceContainer, בהתאם למפרט. כל צבעי קו המתאר של הצ'יפ עודכנו מצבע קו מתאר לצבע וריאנט של קו מתאר, בהתאם למפרט. (I68bd4)

גרסה 1.4.0-alpha03

30 באוקטובר 2024

androidx.compose.material3:material3-*:1.4.0-alpha03 משוחרר. גרסת 1.4.0-alpha03 כוללת את ההוספות האלה.

שינויים ב-API

  • ה-constructor של SheetState עם צפיפות הוצא משימוש לטובת ערכי סף למיקום ולמהירות. (Ifd16e)
  • נוספה rememberTooltipPositionProvider שמכילה לוגיקה מעודכנת של מיקום. הוצאו משימוש rememberPlainTooltipPositionProvider ו-rememberRichTooltipPositionProvider. (Ie66e2)
  • ערכים נוספים של ModalBottomSheetProperties מאפשרים להתאים אישית את הצבעים של שורת המצב ושל שורת הניווט. כברירת מחדל, העדכונים האלה מתבצעים על סמך צבע התוכן במקום על סמך סטטוס העיצוב הכהה במערכת. (Ib874e, ‏ b/362539765)
  • שיפרנו את חוויית הקלט של בוחרי התאריכים: במצב קלט, המיקוד יהיה בשדה הטקסט של התאריך כדי להזין טקסט באופן מיידי. השינוי מוסיף פרמטר requestFocus ל-DatePicker ול-DateRangePicker. אפשר למנוע התמקדות על ידי העברת false. (I12d09, ‏ b/286399710, ‏ b/340102743)
  • שמירת ברירות המחדל של הצורה במטמון של אובייקט הצורה. הגדרת ברירת המחדל של הצורה @Composable ללחצן החלפת המצב. קיבוץ הצורות לברירת המחדל של צורה אחת, כי הווריאנטים מפנים לאותו קובץ אסימונים. (Iaa014)

תיקוני באגים

  • כדאי לבצע אופטימיזציה של ההתנהגות של contentPadding ב-Scaffold כדי להימנע מהרכבה מחדש של תוכן הגוף בכל פעם ש-contentPadding משתנה. (I8c8e2, b/373904168)
  • השם של TextFieldLabelScope progress השתנה ל-labelMinimizedProgress
  • השם של TextFieldLabelPosition Default השתנה ל-Attached. חברי הממשק הוסרו. (If75c6)
  • תוקנה בעיה ב-DatePicker במצב קלט, שבה שגיאות אימות עלולות לגרום לשינוי הגובה של הרכיב. (I2e229, b/280462363)
  • שינוי הערך של פס ההזזה של החומר כשמקשי הבקרה לוחצים. (I1c442)

גרסה 1.4.0-alpha02

16 באוקטובר 2024

androidx.compose.material3:material3-*:1.4.0-alpha02 משוחרר. גרסה 1.4.0-alpha02 מכילה את ההוספות האלה.

שינויים ב-API

  • עדכונים לבוררי התאריכים כדי להבטיח שימוש עקבי ב-Locale ב-DatePicker וב-DateRangePicker כשמגדירים Locale ישירות דרך DatePickerState או DateRangePickerState. חשוב לזכור: כשמגדירים את השפה ישירות לפי המדינה, אתם אחראים לוודא שהטקסטים של הכותרת והכותרת הראשית יותאמו בהתאם, כי טקסט ברירת המחדל שלהם עדיין יחול בהתאם לשפה שמוגדרת כברירת מחדל בפלטפורמה. (I37073, ‏ b/326490763, ‏ b/321657276)
  • SheetState.isAnimationRunning חשוף עכשיו. (I9a3d7)
  • עכשיו DatePickerColors מקבל עדיפות על פני צבעים מנוגדים שהוגדרו בסגנונות הטקסט של הטיפוגרפיה של העיצוב. חשוב גם לציין שהעדכון הזה משנה את המיקום של הפרמטר color בפונקציות של בורר התאריכים, ומציג פרמטר contentColor להתאמה אישית של צבעי הטקסט בכותרת ובשם. (I30d03, ‏ b/347031394)
  • צריך לשנות את השם של SplitButton ל-SplitButtonLayout ולהסיר את ממשקי ה-API של וריאציות הצבע של SplitButton. כדי ליצור וריאציות, צריך לעשות שימוש חוזר בווריאציות הלחצן שסופקו על ידי SplitButtonDefaults. (I44c36)
  • עכשיו יש לפרמטר ModalBottomSheet את הערך sheetGestureEnabled (I856cb, ‏ b/288211587)
  • השמות של standardMotionScheme ו-expressiveMotionScheme שונו ל'רגיל' ו'רגשי'. עכשיו אפשר לגשת לשתי הפונקציות דרך האובייקט התומך MotionScheme, על ידי קריאה ל-MotionScheme.standard() ול-MotionScheme.expressive(). (Iceccf)
  • הוספת הפרמטר maxWidth להסברים קצרים רגילים ועשירים. ברירת המחדל היא מפרט העיצוב של 200dp להנחיות פשוטות ו-320dp להנחיות עשירות. (I30ce9)

תיקוני באגים

  • עכשיו, כשהשדות DatePicker ו-DateRangePicker מוגדרים דרך displayedMonthMillis של המדינה, הם מעדכנים בצורה נכונה את החודש המוצג. (If9e47, ‏ b/333414302)
  • התוכן של ModalBottomSheet נע עכשיו מהשורה הסטטוסים. (I5114c, ‏ b/321877275, ‏ b/336962418, ‏ b/342093067)
  • [Bottom Sheet] Change back callback priority to PRIORITY_DEFAULT to allow IME keyboard to dismiss first. (I447fb)
  • תיקון קריסות ב-DatePicker וב-DateRangePicker כשהשנה המינימלית שניתן לבחור מוגדרת לשנה עתידית. (I78656, ‏ b/319395747)
  • תיקון בעיה בבורר התאריכים כדי לעדכן את ממשק המשתמש כשמחילים מכונה מעודכנת של SelectableDates. (Iad59a, ‏ b/290135807, ‏ b/339898760)

גרסה 1.4.0-alpha01

2 באוקטובר 2024

androidx.compose.material3:material3-*:1.4.0-alpha01 משוחרר. גרסת 1.4.0-alpha01 כוללת את ההוספות האלה.

שינויים בהתנהגות

  • הספרייה לא מוסיפה יותר תלות ב-material-icons-core, כך שאם הפרויקט שלכם מסתמך עליה, תצטרכו להוסיף את התלות הזו במפורש בקובצי build.gradle[.kts]. (I735ff, ‏ b/349894318)
  • הצבע של התווית הפעילה של NavigationBarItem ו-NavigationRailItem השתנה מ-onSurface ל-secondary כדי לשפר את נוחות השימוש, את ניגודיות הצבעים ואת העקביות במערכת (Ibc297). כדי לחזור להתנהגות הקודמת, מעתיקים את צבעי ברירת המחדל ומשנים את selectedTextColor ל-MaterialTheme.colorScheme.onSurface.
  • רכיבי Material 3 משתמשים עכשיו ב-MotionScheme החדש כדי להגדיר את התנועה שלהם. (Ie0f93)
  • שינויים לא מוגדרים בתנועה של אינדיקטור התקדמות מעגלי (I3c07e)
  • מעדכנים את OutlinedIconButtonColors ו-OutlinedIconToggleButtonColors כדי לשפר את ניגודיות הצבעים. (I2743d)
  • צבע הקונטיינר והתוכן עודכנו עבור FilledIconToggleButtonColors ו-FilledTonalIconToggleButtonColors. (Ic5d0f)
  • צבע הגבול של OutlinedButton עודכן מ-outline ל-outlineVariant. (057f00)

שינויים ב-API

  • הוספנו פרמטר reverseLayout אופציונלי לפונקציה enterAlwaysScrollBehavior של TopAppBar כדי לתמוך טוב יותר בתוכן שהוגדר באמצעות reverseLayout. (I4e0e5)
  • עכשיו יש תמיכה בארגומנט contentPadding בפקודה SegmentedButton. (I5ad91, ‏ b/358414376)
  • PullToRefreshState כבר לא כולל הטמעה שמוגדרת כברירת מחדל עבור isAnimating (I6a593)
  • נוספו עומסי יתר חדשים של Material TextField ו-OutlinedTextField שמשתמשים ב-TextFieldState. הוספנו ממשקי API של תיבות לקישוט שתואמים ל-TextFieldDecorator. (If13a1)
  • הוסף פרמטר לצורך בקרה על labelPosition של שדה הטקסט. השימוש ב-alwaysMinimize מאפשר להציג תווית ו-placeholder בשדה טקסט בו-זמנית, גם כשהשדה לא ממוקד, בהתאם לדפוס של ממשק המשתמש. (I1ef2c)
  • נוספו החומרים SecureTextField ו-OutlinedSecureTextField לשדות להזנת סיסמה. (I7e22d)
  • הוספנו היקף לתוויות של שדות טקסט כדי לשלוח שאילתות לגבי התקדמות האנימציה. (If5ec8)
  • הוספנו תמיכה ב-MotionEvent.CLASSIFICATION_DEEP_PRESS לתיאורי הכלים. (I62e6a)
  • השדה isAfternoon של TimePickerState הוא עכשיו ערך של תוסף במקום משתנה בממשק, והשם שלו שונה ל-isPm (I89a97)
  • עדכון של סוג הגופן כדי לתמוך בסולמות של גופנים מודגשים. (Ifa13c)
  • הוספנו את ה-API של ModalWideNavigationRail ושינו את השם של ממשקי ה-API של ModalExpandedNavigationRail ל-DismissibleModalWideNavigationRail. (Ic9118)
  • עדכנו את FloatingAppBarScrollBehavior כך שיחשב את screenOffset באופן אוטומטי ולא יהיה צורך ב-@Composable. (Idf349)
  • עדכונים ב-API של LoadingIndicator לתיקון השמות באובייקט defaults. נוסף קבוע LoadingIndicatorElevation ב-PullToRefresh. (I1d72b)
  • עדכונים ב-API של LoadingIndicator לתיקון השמות באובייקט defaults. נוסף קבוע LoadingIndicatorElevation ב-PullToRefresh. (I1d72b)
  • נוספו הפרמטרים amplitude ו-waveSpeed לוריאציות הלא ידועות של LinearWavyProgressIndicator ושל CircularWavyProgressIndicator. (I2a0c5)
  • תמיכה בשינוי הצורה של לחצן החלפת מצב של סמל בהתאם לסטטוס שלו (לוחץ או מסומן). (Ibc781)
  • עדכון של סוג הגופן כדי לתמוך בסולמות של גופנים מודגשים. (Ifa13c)
  • SplitButton shape morphs based on default / pressed state. הסרנו את ה-API של AnimatedTrailingButton כי ה-API של TrailingButton יכול להציע את אותן התאמות אישיות (I95066)
  • הוספת משתנה כדי להוסיף אנימציה להצגה ולהסתרה של הלחצן המהיר, למשל כשהתוכן גולש. (I8338d)
  • הוספת צורות ומרווחי מרווחים לקבוצת לחצנים מחוברת ב-ButtonGroupDefaults לשימוש בדוגמה. (I68e30)
  • לחצן מפוצל מוסיף ריפוד אופקי ללחצן העוקב ומפעיל מרכוז אופטי שמחושב מהבדלים בין הפינות של ההתחלה והסיום (I122e2)
  • אנחנו משיקים רכיב Material חדש, MotionScheme, שמאפשר להגדיר סכימה לתנועה של הרכיב. אפשר להגדיר את התוכנית דרך MaterialTheme. (Id50c2)

תיקוני באגים

  • מחילים את מדד המעבר הנכון של המיקוד על רכיבי Composables צאצאים של Scaffold. הסדר הוא topBar, ‏ bottomBar, ‏ fab, ‏ תוכן, ‏ סרגל סטטוסים. (I5936b)
  • תוקנה בעיה ב-DatePicker וב-DateRangePicker, שבה בחלק מהשפות ובחלק מהפורמטים של השלד, חלק מרכיבי התאריך (למשל שמות החודשים) לא התחילו באות רישית. (I1430f)
  • שילוב אסימונים של רכיבי FAB ורכיבי תפריט FAB (עדכונים חזותיים קלים למרווחים ולטקסט) (Ib57f3)
  • ModalBottomSheet מופיע עכשיו במקום הראשון בסדר הסריקה הסמנטית, ואחריו ה-scrim. (I436f9, ‏ b/358594665)
  • תיקון של בעיה שבה סרגל האפליקציה התחתון לא נעלם לגמרי כשגוללים מתחת לגלולה של תפריט הניווט במצב מסך מלא (I3ee21)

Compose Material3 גרסה 1.3

גרסה 1.3.1

30 באוקטובר 2024

androidx.compose.material3:material3-*:1.3.1 משוחרר. גרסת 1.3.1 מכילה את ההוספות האלה.

תיקוני באגים

  • עכשיו, כשהשדות DatePicker ו-DateRangePicker מוגדרים דרך displayedMonthMillis של המדינה, הם מעדכנים בצורה נכונה את החודש המוצג. (If9e47, ‏ b/333414302)
  • תיקון קריסות ב-DatePicker וב-DateRangePicker כשהשנה המינימלית שניתן לבחור מוגדרת לשנה עתידית. (I78656, ‏ b/319395747)
  • תיקון בעיה בבורר התאריכים כדי לעדכן את ממשק המשתמש כשמחילים מכונה מעודכנת של SelectableDates. (Iad59a, ‏ b/290135807, ‏ b/339898760)
  • כדי לאפשר למקלדת ה-IME להיסגר קודם, משנים את העדיפות של הקריאה החוזרת (back callback) שמשמשת את הגיליונות התחתונים ל-PRIORITY_DEFAULT. (I447fb)

גרסה 1.3.0

4 בספטמבר 2024

androidx.compose.material3:material3-*:1.3.0 משוחרר. גרסת 1.3.0 כוללת את ההוספות האלה.

שינויים חשובים מאז גרסה 1.2.0

התכונות העיקריות של גרסה 1.3.0

רכיבים חדשים של Material Design 3

  • קרוסלה
  • [ModalBottomSheet] תמיכה עכשיו ב'חזרה חזותית' ב-U+‏ (Iccf32, ‏ b/281967264, ‏ b/304850357)
  • [SearchBar] יש עכשיו תמיכה בתכונה 'חיזוי החזרה' ב-U+‎ (I657f8)
  • חלונית הניווט (ModalDrawerSheet ו-DismissibleDrawerSheet) תומכת עכשיו ב'חזרה חזוי' ב-U+‎ כבקשה מפורשת (Ie5b0b)
  • DropdownMenu תומך עכשיו בצבע, בצורה, בגובה ובגבול בהתאמה אישית. (I8e981,‏b/289554448, ‏ b/301887035, ‏ b/283654243)
  • עדכנו את פס ההזזה כדי לשפר את הנגישות, והוספנו לו אינדיקטור של פער ועצירה. (I3058e)
  • עדכנו את ProgressIndicator כדי לשפר את הנגישות על ידי הוספת אינדיקטור של מרווח ועצירה. (I21451)
  • נוספה תחילית ברירת מחדל לתיבת עזרה עשירה, ותמיכה בתחילית בהתאמה אישית שאפשר לצייר בהתאם לעוגן LayoutCoordinates. (Ifd42c) שינויי תוכנה שעלולים לגרום לכשלים
  • ממשקי API חדשים ל'משיכה לרענון':
    • PullToRefreshState פשוט יותר, והוא משתמש בערכים עשרוניים במקום ביחידות Dp.
    • המשתמש שולט במצב של isRefreshing במקום PullToRefreshState.
    • הפרדת את החיבור של גלילה בתצוגת עץ מ-PullToRefreshState. הוא מטופל על ידי PullToRefreshBox או Modifier.pullToRefresh החדשים.
    • העדכון הזה כולל שינוי מהותי בממשקי ה-API הקודמים הניסיוניים. (I0adeb, ‏ b/314496282, ‏ b/317177684, ‏ b/323787138, ‏ b/324573502, ‏ b/317177683) שינויים חזותיים שמשביתים את הקוד
  • מעדכנים את שכבת-העל של מצב המיקוד ל-0.1f כדי להבטיח ניגודיות צבעים מספקת. (I7ea77)
  • התאמות קטנות לברירת המחדל של צבע הרקע והמשטח ב-lightColorScheme וב-darkColorScheme. (I9db52)
  • עדכנו את הצבעים של פס ההזזה ושל ProgressIndicator בהתאם למפרט החדש של ניגודיות ללא טקסט. (I26807)
  • רכיבים משתמשים עכשיו ב-SurfaceContainer וריאנטים. רכיבים שהצבע שלהם מחושב באופן רשמי באמצעות Surface ו-TonalElevation משתמשים עכשיו בתפקידי SurfaceContainer כברירת מחדל, שלא מושפעים מהגברת הטון. (b/304584161)
  • התפקידים הבסיסיים של Surface ושל Surface container שונו מעט, כדי לספק יותר גוון בעיצובים בהירים ובעיצובים כהים. (I677a5)
  • ממשקי ה-API הניסיוניים הוגדרו כיציבים!
  • שיפורי ביצועים

גרסה 1.3.0-rc01

21 באוגוסט 2024

androidx.compose.material3:material3-*:1.3.0-rc01 משוחרר. גרסת 1.3.0-rc01 כוללת את ההוספות האלה.

תיקוני באגים

  • ModalBottomSheet מופיע עכשיו במקום הראשון בסדר הסריקה הסמנטית, ואחריו ה-scrim. (I436f9, ‏ b/358594665)

גרסה 1.3.0-beta05

24 ביולי 2024

androidx.compose.material3:material3-*:1.3.0-beta05 משוחרר. גרסת 1.3.0-beta05 כוללת את ההוספות האלה.

  • תוקנה בעיה שבה תוכן BottomSheet חסר או חתוך ב-Android N ו-O‏ (a10a2d)
  • הרחבנו את גבולות הסמנטיקה של פס ההזזה כדי ש-TalkBack יוכל להציג כראוי את סמלי ההתמקדות סביב האצבעות. (0b5a1d)

גרסה 1.3.0-beta04

26 ביוני 2024

androidx.compose.material3:material3-*:1.3.0-beta04 משוחרר. גרסת 1.3.0-beta04 כוללת את ההוספות האלה.

גרסה 1.3.0-beta03

‫12 ביוני 2024

androidx.compose.material3:material3-*:1.3.0-beta03 משוחרר. גרסת 1.3.0-beta03 מכילה את ההוספות האלה.

תרומה חיצונית

  • הפיכת androidx.compose.material3.DropdownMenu לזמין מקבוצת מקורות משותפת. (If62c0)

גרסה 1.3.0-beta02

29 במאי 2024

androidx.compose.material3:material3-*:1.3.0-beta02 משוחרר. גרסת 1.3.0-beta02 כוללת את ההוספות האלה.

שינויים ב-API

  • Modifier.pullToRefreshIndicator תומך בהגבהה, צריך לעדכן את ממשקי ה-API של 'משיכה לרענון' כך שהאפשרות 'מופעל' תהיה בוליאנרית במקום פונקציית lambda. תמיכה בהתאמת תוכן ב-PullToRefreshBox (I75679)
  • הפיכת TooltipScope לממשק סגור ויצירת הטמעה פנימית לשימוש ב-TooltipBox וב-Label. (I3833e)
  • נוספו שני משתני אופן פעולה חדשים ל-CarouselItemScopemaskClip ו-maskBorder – כדי להוסיף בקלות צורה וגבול לכל פריט בקרוסלה (Id67a1)
  • TimePickerState הוא עכשיו ממשק ומאפשר להגדיר את השעה (I88546)
  • עדכנו את ה-API לעיצוב הקישורים: העבירו את TextLinkStyles אל TextStyle והסירו את TextDefaults מהחומר. (I5477b)

תיקוני באגים

  • סמלי הסטטוס וסמלי שורת הניווט של ModalBottomSheet משתנים בהתאם לסטטוס העיצוב הכהה. (Ie1fe7, ‏ b/338342149)
  • נוספה סמנטיקה של סגירת גיליון למסך ההסרה ModalBottomSheet. (0e61cb,‏b/328801864)

תרומה חיצונית

  • הפיכת androidx.compose.material3.AlertDialog לזמין מקבוצת מקורות משותפת (Ia33f5)
  • איך מגדירים ש-ModalBottomSheet יהיה זמין מקבוצת מקורות משותפת (Id7cc7)

גרסה 1.3.0-beta01

14 במאי 2024

androidx.compose.material3:material3-*:1.3.0-beta01 משוחרר. גרסת 1.3.0-beta01 כוללת את ההוספות האלה.

שינויים ב-API

  • שימוש ב-DpSize במקום ב-CaretProperties. מתבצעת הסרה של CaretProperties. משנים את השם של CaretScope ל-TooltipScope. (Id9a76)
  • עדכנו את ה-API לקבלת קישורים בעיצוב Material בטקסט. באופן ספציפי, הוסרו מה-TextDefaults השיטות ליצירת LinkAnnotations מעוצב ולניתוח HTML עם קישורים מעוצבים. במקום זאת, הוספנו את הכיתה TextLinkStyles שמאפשרת לעצב את הקישורים כפרמטר ל-Text composable. (I31b93)

גרסה 1.3.0-alpha06

1 במאי 2024

androidx.compose.material3:material3-*:1.3.0-alpha06 משוחרר. גרסת 1.3.0-alpha06 כוללת את ההוספות האלה.

שינויים שעלולים לגרום לכשלים

  • ממשקי API חדשים ל'משיכה לרענון':

    • PullToRefreshState פשוט יותר, עם שימוש בערכים עשרוניים במקום ביחידות Dp.
    • המשתמש שולט במצב של isRefreshing במקום PullToRefreshState.
    • הפרדת את החיבור של גלילה בתצוגת עץ מ-PullToRefreshState. הוא מטופל על ידי PullToRefreshBox או Modifier.pullToRefresh החדשים.
    • העדכון הזה הוא שינוי משמעותי בממשקי ה-API הקודמים הניסיוניים. (I0adeb, ‏ b/314496282, ‏ b/317177684, ‏ b/323787138, ‏ b/324573502, ‏ b/317177683)

שינויים ב-API

  • השדה RippleConfiguration#isEnabled הוסר, והשדה LocalRippleConfiguration הוגדר כאפשרות nullable. כדי להשבית רעידה, במקום לספק RippleConfiguration עם isEnabled = false, מספקים null ל-LocalRippleConfiguration. (I22725)
  • ModalBottomSheet מצייר בצורה מדויקת יותר את השכבה העליונה מעל שורת הסטטוס כשהתכונה 'מסך מלא' מופעלת. מעכשיו, תוכן של חלון מודאלי בתחתית המסך יכול להשתמש בחלקים הפנימיים של החלון, וכך לאפשר הצגת תוכן מעל סרגל הניווט. השם של הפרמטר ModalBottomSheet windowInsets השתנה ל-contentWindowInsets כדי לציין איפה יוחלו הרכיבים הפנימיים. הם כבר לא קשורים ללוגיקת החלון. הסוג contentWindowInsets השתנה לפונקציה שמחזירה את הערך WindowInsets, כדי לאפשר את הפתרון שלו בחלון החדש. (I39630, ‏ b/274872542, ‏ b/300280229, ‏ b/290893168)
  • עכשיו נעשה שימוש בפריסת PrimaryScrollableTabRow ו-SecondaryScrollableTabRow בהתאמה אישית במקום ברכיב משנה, מה שצפוי לשפר את הביצועים. (I991e0)
  • קישורי טקסט קיבלו אפשרות סגנון למצב לחיצה, בנוסף לסגנון הרגיל, למצב העברה עם העכבר ולמצב התמקדות. לשיטות TextDefaults נוספה ארגומנט pressedStyle כדי לתמוך בכך. (Ic473f, ‏ b/139312671)

תיקוני באגים

  • נקודות האחיזה לגרירה של חלונית הניווט תואמות עכשיו לרוחב של drawerContent. (Ibc72f, ‏ b/245355396)
  • עכשיו, OutlinedTextField הרווח העליון של התווית מתייחס לגודל הגופן של המערכת. (Idc781)
  • מיקום החבילה הקבוע הוא CalendarLocale. (Ifa235)
  • [חזרה חזותית חזויה] עדכון אנימציות של חזרה חזותית חזויה כך שישתמשו בעקומת אינטרפולציה של (0.1, 0.1, 0, 1) (I2591a)

גרסה 1.3.0-alpha05

17 באפריל 2024

androidx.compose.material3:material3-*:1.3.0-alpha05 משוחרר. גרסת 1.3.0-alpha05 כוללת את ההוספות האלה.

תכונות חדשות

  • ל-SearchBar ול-DockedSearchBar יש עומסי יתר חדשים שמקבלים פרמטר של שדה טקסט. כך אפשר לעצב את שדה הטקסט בנפרד משאר סרגל החיפוש, וגם להעביר שדות טקסט מותאמים אישית. שדה הטקסט של ההטמעה הנוכחית זמין כ-SearchBarDefaults.InputField. (I50c73, ‏ b/275074248, ‏ b/278773336, ‏ b/326627700)
  • הפונקציה הלוגריתמית drawTick נוספה ל-API הציבורי כדי להתאים אישית את הסמנים אם יש צורך (I0c048)

שינויים ב-API

  • קישורי טקסט קיבלו אפשרות עיצוב למצב לחיצה, בנוסף לעיצוב הרגיל, לעיצוב במצב 'עכבר מרחף מעל' ולעיצוב במצב 'מוקד' (I5f864,‏ b/139312671)
  • עדכנו את CarouselItemInfo כדי לחשוף את Rect של המסכה שבאמצעותה הפריט נחתך (I785d8)
  • הוסר BasicTooltipState מה-API הציבורי של Material 3. הפונקציונליות שלו משולבת עם TooltipState עד שהגרסה של BasicTooltip ב-Foundation תהיה יציבה. (Icda29)
  • נוספו אובייקט TextDefaults שמכיל שיטות ליצירת LinkAnnotation ולניתוח מחרוזת עם תגים של HTML, שמחילה את MaterialTheme על הקישורים (I98532,‏ b/139312671)
  • לא ניתן יותר ליצור תת-כיתות ב-ExposedDropdownMenuBoxScope. תפריטים נפתחים חשופים כוללים עכשיו את הפרמטר MenuAnchorType, שצריך להעביר אל menuAnchor כדי לשפר את תאימות ה-a11y. צריך להשתמש באפשרות הזו במקום להעביר את focusable אל ExposedDropdownMenu, שיצאה משימוש. ל-menuAnchor יש פרמטר חדש לשלוט במצב של enabled. (I55ee6, ‏ b/257209915, ‏ b/308840226)
  • תוקן צבע הגבול של OutlinedButton כשהתכונה מושבתת. נוספה עומס יתר של ButtonDefaults.outlinedButtonBorder("enabled") שמקבל את המצב המופעל. (Ie650b, ‏ b/318461363)
  • הוספנו את הכיתה החדשה CarouselItemInfo כדי לעזור ללקוחות לקבל מידע על הגדלים של הפריטים. (I9070c)
  • ה-constructor של ColorScheme ללא קונטיינרים של פלטפורמה הוצא משימוש. יש לעבור ל-constructor שכולל קונטיינרים של פלטפורמות. (I35c11)
  • [Outlined]TextFieldDefaults ContainerBox השם שונה ל-Container. (Ie8d3b)

תיקוני באגים

  • אם הערך של sheetSwipeEnabled הוא False, BottomSheetScaffold לא יגלול יותר מגלילה בתצוגת עץ. (I5e1c1, ‏ b/306464779)
  • הסרנו חלק מההערות של ExperimentalMaterial3Api OptIn ב-IconButtonSamples.kt. (I111d1)

גרסה 1.3.0-alpha04

3 באפריל 2024

androidx.compose.material3:material3-*:1.3.0-alpha04 משוחרר. גרסת 1.3.0-alpha04 מכילה את ההוספות האלה.

תכונות חדשות

  • נוספו שתי גרסאות ניסיוניות של קרוסלה ב-Material3HorizontalMultiBrowseCarousel ו-HorizontalUncontainedCarousel (I88d64)
  • עדכנו את חלונית הניווט של Compose M3‏ (ModalDrawerSheet ו-DismissibleDrawerSheet) כדי לתמוך בתכונה 'חזרה חזוי' ב-U+ כבקשה מפורשת (Ie5b0b)
  • נוספה ממשק API חדש ב-Icon שמאפשר להעביר גוון צבע כ-lambda כדי למנוע יצירת קומפוזיציה מחדש. (I5b5a2)
  • ממשקי ה-API של שורת האפליקציות העליונה תומכים עכשיו בגבהים מותאמים אישית גם בקטעים קבועים וגם בקטעים שניתן לכווץ. (Ib8b0c, ‏ b/323403446)

שינויים ב-API

  • ממשקי ה-API של שורת האפליקציות העליונה תומכים עכשיו בגבהים מותאמים אישית גם בקטעים קבועים וגם בקטעים שניתן לכווץ. תוקנה בעיה שגרמה ליצירה מחדש של שורת האפליקציות העליונה עם אפליקציות בקו אחד יותר מדי פעמים בזמן גלילה בתוכן. תוקנה בעיה שבה MediumTopAppBar קיצרו שמות של תכנים במכשירים עם הגדרות גופן/תצוגה גדולות. (Ib8b0c, ‏ b/323403446, ‏ b/300953236, ‏ b/286296147, ‏ b/330410290, ‏ b/308540676)
  • SegmentedButton וממשקי ה-API המשויכים יציביים עכשיו (I8a158)
  • הגרסאות SwipeToDismissBox, ‏ SwipeToDismissBoxDefaults, ‏ SwipeToDismissBoxState ו-SwipeToDismissBoxValue סומנו עכשיו כגרסאות יציבות. (I5f000)
  • הוסרו ממשקי API וממשקי enum של DismissDirection ו-DismissValue שהוצאו משימוש. (I89ccd)
  • הוספת תג ניסיוני לאובייקט התומך CarouselState של הקרוסלה. (I94154)
  • הוצאנו משימוש את LocalMinimumInteractiveComponentEnforcement והוספנו את LocalMinimumInteractiveComponentSize כתחליף. (I7a7ac)
  • ה-constructor של SearchBarColors הוא עכשיו ציבורי. (I769ca)
  • הוספת פרמטר gesturesEnabled ל-SwipeToDismissBox. (Idc59f, ‏ b/324170119)
  • הוסרו ממשקי API של שדות טקסט שסומנו כמיושנים וכניסיוניים. (I1305f)

גרסה 1.3.0-alpha03

‫20 במרץ 2024

androidx.compose.material3:material3-*:1.3.0-alpha03 משוחרר. גרסת 1.3.0-alpha03 מכילה את ההוספות האלה.

שינויים חזותיים שעלולים לגרום לכשלים

  • מעדכנים את שכבת-העל של מצב המיקוד ל-0.1f כדי להבטיח ניגודיות צבעים מספקת. (I7ea77)
  • התאמות קטנות לברירת המחדל של צבע הרקע והמשטח ב-lightColorScheme וב-darkColorScheme. (I9db52)

תכונות חדשות

  • נוספו פרמטרים להתאמה אישית של ExposedDropdownMenu. באופן ספציפי, לתפריטים יש עכשיו פרמטר focusable (ברירת המחדל היא true) שצריך להגדיר כ-false כשעובדים עם שדות טקסט שניתנים לעריכה. (I4184c, ‏ b/323694447, ‏ b/278609042)

שינויים ב-API

  • הדגל ScaffoldSubcomposeInMeasureFix הוסר. (Ie2a4b)
  • המכשיר NavigationRailItemColors מסומן עכשיו כ-@Immutable. (If6112, ‏ b/327660613)
  • המכשיר NavigationBarItemColors מסומן עכשיו כ-@Immutable. (I42a30, ‏ b/298064514)
  • שינוי הסדר של הפרמטרים ב-Slider Track composable. (I9f315)
  • ExposedDropdownMenu מיושם עכשיו באמצעות Popup. ההתנהגות אמורה להיות זהה, מלבד תפריטים שניתן להתמקד בהם עם שדות טקסט שניתנים לעריכה, שעשויים להיסגר כשמקלידים במקלדת.

תיקוני באגים

  • התפקידים הבסיסיים של Surface ושל Surface container שונו מעט, כדי לספק יותר גוון בעיצובים בהירים ובעיצובים כהים. (I677a5)
  • עדכנו את הצבעים של פס ההזזה ושל ProgressIndicator בהתאם למפרט החדש של ניגודיות ללא טקסט. (I26807)
  • מעדכנים את שכבת-העל של מצב המיקוד ל-0.1f כדי להבטיח ניגודיות צבעים מספקת. (I7ea77)
  • התאמות קטנות לברירת המחדל של צבע הרקע והמשטח ב-lightColorScheme וב-darkColorScheme. (I9db52)

גרסה 1.3.0-alpha02

6 במרץ 2024

androidx.compose.material3:material3-*:1.3.0-alpha02 משוחרר. גרסת 1.3.0-alpha02 כוללת את ההוספות האלה.

שינויים ב-API

  • מחזירים את המצבים של פס ההזזה למצב יציב. הופכים את State.onValueChangeFinished שוב ל-val. אריזה של onValueChangeFinished ב-rememberUpdatedState. (I82ab2, ‏ b/322269951)
  • רכיבי הניווט משתמשים עכשיו בתפקידים החדשים SurfaceContainer. DrawerDefaults מספק עכשיו מאפיינים נפרדים standardContainerColor ו-modalContainerColor. DrawerDefaults.ModalDrawerElevation הוא עכשיו 0.dp. (I7fbac)
  • מסירים את @Stable מהמצבים של Slider כי אנחנו משנים את state.onValueChangeFinished ל-var. (Ied34a, ‏ b/322269951)
  • מפרט האנימציה של ModalBottomSheet ו-StandardBottomSheet הוא עכשיו TweenSpec, שעודכן מאנימציית קפיץ. כך פותרים בעיה של חריגה נראית לעין. הוסרו הרסטוררים של SheetState ללא צפיפות שהוצאו משימוש. (I7babc, ‏ b/285847707)

תיקוני באגים

  • רכיבים משתמשים עכשיו ב-SurfaceContainer וריאנטים. רכיבים שהצבע שלהם חושב באופן רשמי באמצעות Surface ו-TonalElevation משתמשים עכשיו בתפקידי SurfaceContainer כברירת מחדל, שלא מושפעים מהגברת הטון. (b/304584161)
  • תוקן באג שגרם לצבע של מאגר ElevatedFilterChip מושבת ולא מסומן להיות שחור. (I400e6, ‏ b/322407043)
  • תיקון של אינדיקטור התקדמות לא ידוע כשההתקדמות היא 0 (Id6582)
  • תוקנה בעיה ב-Slider וב-RangeSlider בפריסה מימין לשמאל (Iab0e1)
  • הוספת SliderRangeTolerance לחישוב הטווח של פס ההזזה, כי עיגול של Float יכול להיות לא מדויק. (Ic918a, b/324934900)
  • חשוב לוודא שהלחצנים של DatePickerDialog מוצגים כשאתם ממקמים בתוך DateRangePicker או כשאתם מציגים כל סוג של בורר תאריכים במסכים קטנים עם גופנים גדולים יותר. (Ie4758, ‏ b/325107799, ‏ b/277768544)
  • Menu משתמש עכשיו בתפקיד SurfaceContainer לצבע של המאגר. MenuDefaults.TonalElevation הוא עכשיו 0.dp. (I135b7)
  • TextField משתמש עכשיו בתפקיד SurfaceContainerHighest לצבע של המאגר. (I4dced)
  • צ'יפים עם הרשאות מוגברות משתמשים עכשיו בתפקיד SurfaceContainerLow (I7cd2f)
  • הצבע של הקונטיינר DatePicker הוא עכשיו SurfaceContainerHigh. DatePickerDefaults.TonalElevation הוא עכשיו 0.dp. (Ida753)
  • עדכון הצבע של מאגר הכרטיסיות התחתונות והצבע של ידית הגרירה. (I72a0a)
  • הצבע של הקונטיינר RichTooltip הוא עכשיו SurfaceContainer. (Ia8b45)
  • הצבע של הקונטיינר SearchBar הוא עכשיו SurfaceContainerHighest. SearchBarDefaults.TonalElevation הוא עכשיו 0.dp. (I88604)
  • העדכונים מחליפים את הסמלים או המסלולים המושבעים והלא נבחרים כדי לנצל את תפקיד הצבע SurfaceContainerHighest. (I7687a)
  • הצבע של הקונטיינר AlertDialog הוא עכשיו SurfaceContainerHigh. (Ie0433)
  • הצבע של הקונטיינר BottomAppBar הוא עכשיו SurfaceContainer. הצבע של TopAppBar onScroll הוא עכשיו SurfaceContainer. (I41630)
  • הצבע של הקונטיינר ElevatedCard הוא עכשיו SurfaceContainerLow. צבע הקונטיינר של FilledCard הוא SurfaceContainerHighest. (I35141)
  • הצבע של הקונטיינר ElevatedButton הוא עכשיו SurfaceContainerLow. ל-FilledIconButton, כשהיא לא מסומנת, יש עכשיו צבע מאגר של SurfaceContainerHighest. (I792c9)
  • עדכון התפקיד של צבע המאגר TimePicker וצבע לוח השעון ל-SurfaceContainerHighest. (I43b93)

גרסה 1.3.0-alpha01

21 בפברואר 2024

androidx.compose.material3:material3-*:1.3.0-alpha01 משוחרר. גרסה 1.3.0-alpha01 כוללת את ההוספות האלה.

תכונות חדשות

  • עדכון של Compose M3 ModalBottomSheet לתמיכה בתכונה 'חזרה חזותית' ב-U+‏ (Iccf32, ‏ b/281967264, ‏ b/304850357)
  • עדכון של Compose M3 SearchBar לתמיכה ב'חזרה חזותית' ב-U+‎ (I657f8)
  • עדכנו את פס ההזזה כדי לשפר את הנגישות, והוספנו לו אינדיקטור של פער ועצירה. (I3058e)
  • עדכנו את ProgressIndicator כדי לשפר את הנגישות על ידי הוספת אינדיקטור של מרווח ועצירה. (I21451)
  • הוספת קו נטוי (caret) כברירת מחדל לתווית עזר עשירה. ממשק ה-API החדש של תווית העזר העשירה מאפשר עכשיו לצייר קו נטוי מותאם אישית בהתאם לעוגן LayoutCoordinates. (Ifd42c)

שינויים בהתנהגות

  • רכיבי Material הועברו לשימוש בממשקי ה-API החדשים של Ripple, והם כבר לא שולחים שאילתות ל-RippleTheme.

שינויים ב-API

  • הפוסט drawStopIndicator זמין עכשיו לכולם. (I3f59f)
  • מסמנים את הפונקציה formatWithSkeleton של DatePicker כפנימית (Ic65dc)
  • DropdownMenu תומך עכשיו בצבע, בצורה, בגובה ובגבול בהתאמה אישית. (I8e981, ‏ b/289554448, ‏ b/301887035, ‏ b/283654243)
  • רכיבי Material3 שחשפו MutableInteractionSource ב-API שלהם עודכנו כך שיחשפו עכשיו MutableInteractionSource שאפשר להעביר לו ערך null, שמוגדר כברירת מחדל לערך null. אין כאן שינויים סמנטיים: העברת null פירושה שאתם לא רוצים להעביר את MutableInteractionSource, והוא ייווצר בתוך הרכיב במקרה הצורך. שינוי ל-null מאפשר לרכיבים מסוימים לא להקצות אף פעם MutableInteractionSource, ולרכיבים אחרים ליצור מופע רק באופן עצלני כשהם צריכים, וכך לשפר את הביצועים של הרכיבים האלה. אם אתם לא משתמשים ב-MutableInteractionSource שאתם מעבירים לרכיבים האלה, מומלץ להעביר null במקום זאת. מומלץ גם לבצע שינויים דומים ברכיבים שלכם. (I41abb, ‏ b/298048146)
  • הוספת RippleConfiguration ו-LocalRippleConfiguration כדי לאפשר התאמה אישית של תנודות (ripples) לכל רכיב או עץ משנה באמצעות ערכים קבועים. לדוגמה, כדי לשנות את הצבע של רכיב שאתם לא שולטים בו, או כדי להשבית רטט של רכיב. ברוב המקרים צריך להשתמש בערכי ברירת המחדל: ממשקי ה-API האלה הם פתח מילוט להתאמה אישית של רכיבים ספציפיים או של עצי משנה מוגבלים. לשינויים רחבים יותר ולמערכות עיצוב בהתאמה אישית, מומלץ ליצור רעידה משלכם באמצעות createRippleModifierNode. (I7b5d6, ‏ b/298048146)
  • הוספה של API חדש של תנודות ב-material3, שמחליף את rememberRipple שהוצא משימוש. הקוד גם מוסיף CompositionLocal זמני, LocalUseFallbackRippleImplementation, כדי להחזיר את הרכיבים של material3 לשימוש בממשקי ה-API הקודמים rememberRipple או RippleTheme. האפשרות הזו תוסר במהדורה היציבה הבאה, והיא מיועדת רק לעזרה זמנית בהעברה במקרים שבהם אתם מספקים RippleTheme מותאם אישית. (I34cbc, ‏ b/298048146)

תיקוני באגים

  • הוסר קומפוזיציה משנית בתוך ModalBottomSheet כדי לשפר את הביצועים. תוקנה בעיה שגרמה לקריסה של ModalBottomSheet בתרחישים ספציפיים בשילוב עם LookaheadScope. (I2a198)
  • הוסר קומפוזיציה משנית בתוך BottomSheetScaffold כדי לשפר את הביצועים. תוקנה בעיה שגרמה לקריסה של BottomSheetScaffold בתרחישים ספציפיים בשילוב עם LookaheadScope. (Ie6401)
  • מיקום התג מותאם כך שיהיה קרוב יותר למרכז תוכן העוגן ביחס לפינה השמאלית העליונה. (I18a28)
  • תוקנה בעיה בנגישות ב-DateRangePicker שבה כותרת הטקסט 'חודש-שנה' הועברה כפעולה שאפשר לבצע אותה למשתמשים בקורא המסך, בגישה באמצעות מתג וב-Voice Access. (I2ac55)
  • תוקן באג בסדר הפרמטרים של mediumTopAppBarColors. (Ibe64a)

גרסה 1.2

גרסה 1.2.1

6 במרץ 2024

androidx.compose.material3:material3-*:1.2.1 משוחרר. גרסת 1.2.1 מכילה את ההוספות האלה.

תיקוני באגים

  • מחזירים את המצבים של פס ההזזה למצב יציב. הופכים את State.onValueChangeFinished שוב ל-val. אריזה של onValueChangeFinished ב-rememberUpdatedState. (Ie8fd0, ‏ b/322269951)
  • מסירים את @Stable מהמצבים של Slider כי אנחנו משנים את state.onValueChangeFinished ל-var. (I82ba1, ‏ b/322269951)
  • תיקון NavigationBar צבעים בהתאמה אישית להעתקה מברירת המחדל. (80a779, ‏ b/326894020)
  • תיקון רגרסיה ב-ExposedDropdownMenu כדי שאפשר יהיה להתמקד בו שוב (3fcec1, ‏ b/323694447)
  • תיקון בעיה של שמירת צבע לחצן במטמון (3e5bbcb/327371655)

גרסה 1.2.0

7 בפברואר 2024

androidx.compose.material3:material3-*:1.2.0 משוחרר. גרסה 1.2.0 מכילה את ההוספות האלה.

בעיה ידועה

  • באג ברינדור של יכולת הפעולה ההדדית של View-Compose הופיע ב-PrimaryTabRow כחלק משינוי לשיפור הביצועים. הפתרון הוא להשתמש ב-TabRow עם TabRowDefaults.PrimaryIndicator

שינויים חשובים מאז גרסה 1.1.0

רכיבים חדשים של Material Design 3

שיפורים ברכיבים קיימים של Material Design 3

שדרגנו ממשקי API ניסיוניים למצב יציב!

שיפורי ביצועים

גרסה 1.2.0-rc01

24 בינואר 2024

androidx.compose.material3:material3-*:1.2.0-rc01 משוחרר. גרסה 1.2.0-rc01 כוללת את ההוספות האלה.

תיקוני באגים

  • תוקן באג בסדר הפרמטרים של mediumTopAppBarColors. (Ibe64a)
  • תוקנה באג שהופיע ב-1.2.0-beta02 ב-CardDefaults.cardColors, שלא עדכן את contentColor על סמך ערך הפרמטר containerColor. (Iee041, ‏ b/319671246)
  • תוקן באג ב-disabledContentColor שהופיע ב-1.2.0-beta02, והוספה אופטימיזציה קלה. (I6dda1, ‏ b/318428829)

גרסה 1.2.0-beta02

10 בינואר 2024

androidx.compose.material3:material3-*:1.2.0-beta02 משוחרר. גרסה 1.2.0-beta02 מכילה את ההצהרות האלה.

באג ידוע

  • באג ב-IconButtonColors יוביל כברירת מחדל להקצאת disabledContentColor לאלפא (0.38f) של LocalContentColor במקום ל-contentColor שצוין על ידי המשתמש. הפתרון הזמני הוא להגדיר את disabledContentColor באופן מפורש. נפתור את הבעיה הזו במהדורה הבאה.

שינויים ב-API

  • נוספה היכולת להפעיל סמלי חץ של טיפים ב-Plain Tooltip APIs. (Ibf767)
  • השם של SwipeToDismissState, rememberSwipeToDismiss וגם SwipeToDismissValue משתנה ל-_SwipeToDismissBox_. (I68d6d)

תיקוני באגים

  • תוקן ערך המילוי בסוף ListItem כך שיתאים למפרט. (Ibd68b, ‏ b/305342674)
  • צבע המתאר של כרטיס עם מתאר ממופה עכשיו כראוי ל-OutlineVariant. (I75480, b/310979715)
  • הצבע הדינמי מושאב עכשיו מתפקידי צבע שהוגדרו במערכת. כך אפשר לשפר את הניגודיות של תוכן נגיש, ולשמור על התאמה מדויקת יותר של הצבעים הדינמיים למפרט של Material. (I1de96)
  • תוקנה הטיפול בלחצן החזרה ModalBottomSheet ב-Android T/13 ואילך כשandroid:enableOnBackInvokedCallback="true". (I728dc, ‏ b/306196110)

גרסה 1.2.0-beta01

13 בדצמבר 2023

androidx.compose.material3:material3-*:1.2.0-beta01 משוחרר. גרסה 1.2.0-beta01 כוללת את ההצהרות האלה.

שינויים ב-API

  • סימון של TabIndicatorScope כניסיוני. (I45c88)
  • הסרה של ממשקי API ניסיוניים שהוצאו משימוש לתיאור קצר. (I438cb)
  • משנים את עומסי היתר החדשים של TabRow כך שלא ישתמשו בהרכבים משניים. כתוצאה מכך, יש דרך אחרת ליצור את האינדיקטורים TabRow באמצעות משתני מותאם אישית שסופקו. (Ife741)
  • הוצאה משימוש של ממשקי ה-API DismissDirection ו-DismissValue. הם מוזגו ל-SwipeToDismissValue, שהערכים שלו מציינים גם את המיקום וגם את הכיוון של SwipeToDismissBox. הערך DismissState.progress מסומן עכשיו כ-FloatRange בין 0.0 לבין 1.0. DismissState הוצאו משימוש והתכונות Saver ו-Constructor הוסרו. הרכיב SwipeToDismiss, המצב והאובייקט של ברירת המחדל סומנו כניסיוניים. (Ib54f2)

תיקוני באגים

  • האינדיקטור שמוגדר כברירת מחדל עבור PullToRefresh הוא עכשיו חץ פתוח במקום משולש מלא. (I67be3)

גרסה 1.2.0-alpha12

29 בנובמבר 2023

androidx.compose.material3:material3-*:1.2.0-alpha12 משוחרר. גרסה 1.2.0-alpha12 מכילה את ההוספות האלה.

שינויים ב-API

  • הפונקציה RangeSlider מקבלת עכשיו טווח של Kotlin (למשל, 0f..1f) במקום סיווג ערך FloatRange מותאם אישית. עכשיו נעשה שימוש בטווח Kotlin גם ב-SnapFlingBehavior.kt. (I025cb)
  • מסמנים את פונקציות המפעל של המודификаторים כ-@Stable. (Ib109f)

גרסה 1.2.0-alpha11

15 בנובמבר 2023

androidx.compose.material3:material3-*:1.2.0-alpha11 משוחרר. גרסה 1.2.0-alpha11 מכילה את ההצהרות האלה.

תכונות חדשות

  • הטמעה של PullToRefreshContainer ו-PullToRefreshState, שמספקות יחד הטמעה של 'משיכה לרענון' ב-Material3. (I16456, ‏ b/261760718)

שינויים ב-API

  • מסמנים את השדות SwipeToDismissBox, DismissDirection ו-DismissValue כניסיוניים. (I517b0)
  • משנים את השם של SwipeToDismiss ל-SwipeToDismissBox. משנים את השם של background ל-backgroundContent ואת השם של dismissContent ל-lambda של content בסוף. (I7f4d3)
  • הופכים את המבנה של ChipElevation ו-SelectableChipElevation לציבורי. (Ie0c48, ‏ b/308432421)
  • הוספה של ModalBottomSheetProperties. העברה של securePolicy אל ModalBottomSheetProperties. הוספה של isFocusable ו-shouldDismissOnBackPress ל-ModalBottomSheetProperties. המשתנים הבוליאניים החדשים האלה עוזרים לקבוע איך גיליון התחתון המצבי צריך לטפל באירועי IME. (Iea56f, ‏ b/278216859)
  • עדכנו את המצבים של RangeSlider ו-Slider כדי להסיר את initialOnValueChange, את הקידומות הראשוניות ואת קובצי ה-kdoc המתאימים. (I57d30)
  • מומלץ להפסיק להשתמש בכיתה ChipBorder ובקריאות הפונקציה המשויכות אליה, ולהשתמש ב-BorderStroke ישירות במקום זאת. (I89cc2)
  • ממשקי ה-API של הסבר קצר ב-Foundation נקראים עכשיו @ExperimentalFoundationApi. (I30b0b)
  • התכונות TabRow ו-ScrollableTabRow לא הוצאו משימוש. הווריאנטים הראשי והמשני החדשים מסומנים כניסיוניים. (I0def6)
  • צ'יפים של מסננים וקלט משתמשים עכשיו ב-BorderStroke ישירות. (I07a8d)
  • SegmentedButton משתמש עכשיו ב-BorderStroke ישירות. (I89b9b)
  • שינינו את השם של הפונקציה הגנרית AlertDialog ל-BasicAlertDialog, והוצאנו משימוש את הפונקציה הקודמת. (Idbe52)
  • משנים את השם של ממשקי ה-API של SwipeToDismiss ל-SwipeDismiss, ומקדמים את ממשקי ה-API החדשים של SwipeDismiss למצב יציב. (I14cbe)
  • הוספת tonalElevation ו-shadowElevation לממשקי API של תיאור כלים. בנוסף, העברנו את ממשקי ה-API TooltipBox,‏ PlainTooltip ו-RichTooltip חזרה למצב 'ניסיוני' כי הם פורסמו בטעות כגרסאות יציבות. (If0f66, ‏ b/293939035)
  • שדרוג ממשקי API ניסיוניים של שבבים למצב יציב. (Iea2c3)
  • הסרת ההערה @ExperimentalMaterial3Api מהכרטיסים שניתן ללחוץ עליהם ב-Material3. (I88dbf)

תיקוני באגים

  • תוקנה בעיה שבה SwipeToDismiss קרס בתרחישים מסוימים עם פריסות עץ של Lookahead ו-Lazy. (Ica8d1, ‏ b/297226562)

גרסה 1.2.0-alpha10

18 באוקטובר 2023

androidx.compose.material3:material3-*:1.2.0-alpha10 משוחרר. גרסה 1.2.0-alpha10 מכילה את ההצהרות האלה.

שינויים ב-API

  • העלאת Badge ו-BadgedBox לגרסה היציבה. (I67f16, ‏ b/261565132)
  • הוספת securePolicy כפרמטר ל-ModalBottomSheet, כדי שמשתמשים יוכלו להגדיר את ההתנהגות של WindowManager.LayoutParams.FLAG_SECURE. (Icdac8, ‏ b/296250262)
  • נוספו עומסי יתר חדשים של LinearProgressIndicator ו-CircularProgressIndicator שמקבלים את progress כ-lambda. הביצועים שלהן אמורים להיות טובים יותר מאלה של הגרסאות הקודמות. (I824e6, ‏ b/295616656)
  • שינוי השם של StandardSizeClasses ל-AllSizeClasses. (I8cb07)
  • שילוב של פונקציות חישוב של כיתות של גודל חלון. (Iad935)

תיקוני באגים

  • תיקון קריסה של DatePicker כשלוחצים במהירות על לחצני החצים לניווט כשהחודש המוצג נמצא בקצה של טווח השנים המורשה. (I46f36, ‏ b/290954897, ‏ b/297002119)
  • [Nav rail/bar] Support transparent color for indicator. (Ie0a9b, ‏ b/267289987)

גרסה 1.2.0-alpha09

4 באוקטובר 2023

androidx.compose.material3:material3-*:1.2.0-alpha09 משוחרר. גרסה 1.2.0-alpha09 מכילה את ההצהרות האלה.

שינויים ב-API

  • הועברו ModalNavigationDrawer ו-DismissibleNavigationDrawer לשימוש בממשקי ה-API החדשים של AnchoredDraggable. השדה animateTo של DrawerState הוחלף בשיטות open ו-close, וההיסט מוצג עכשיו כ-float במקום כאובייקט מצב. אפשר לגשת להיסט ישירות דרך currentOffset. (I0a72c)
  • נוספו פונקציות שלא ניתן לשלב כדי ליצור DatePickerState ו-DateRangePickerState ישירות. אפשר להשתמש בפונקציות האלה כחלופה לפונקציות rememberDatePickerState ו-rememberDateRangePickerState של Composable לפי הצורך. (I70326, ‏ b/291524052)
  • ל-TabRows מוצגים עכשיו וריאנטים ראשיים ומשניים. הם ממופים בצורה נכונה להתנהגות של הצבע והחיווין כפי שמוגדרים ב-Material3.
  • עכשיו אפשר לראות את מצב הגלילה ב-PrimaryScrollableTabRow וב-SecondaryScrollableTabRow. (Iec8f5, ‏ b/260572337)
  • הוספת פרמטר sheetMaxWidth חדש שמפתחים יכולים להגדיר כדי לציין את רוחב הגיליון המקסימלי. אפשר להעביר את הערך Dp.Unspecified לפרמטר אם רוצים ליצור גיליון ברוחב המסך כולו. (Ifb7c9, ‏ b/266697696)
  • הוספה מחדש של ממשקי ה-API PlainTooltipBox ו-RichTooltipBox כשיטות שהוצאו משימוש. (I246fa)

תיקוני באגים

  • תיקון קריסה כשה-DatePicker מופעל עם DatePickerFormatter שיש לו שלדי תאריכים מסוימים שנשארים ללא שינוי כשהם מומרים לתבניות תאריכים (כמו YY). (I01f29)

גרסה 1.2.0-alpha08

20 בספטמבר 2023

androidx.compose.material3:material3-*:1.2.0-alpha08 משוחרר. גרסה 1.2.0-alpha08 מכילה את ההוספות האלה.

שינוי התנהגות שעלול לגרום לכשלים

  • ColorScheme הוא עכשיו Immutable, כך שעדכוני צבעים ספציפיים פחות יעילים, אבל השימוש הנפוץ יותר בצבעים יעיל יותר. הסיבה לשינוי הזה היא שברוב האפליקציות, עדכון צבעים ספציפיים לא יהיה תרחיש לדוגמה עיקרי. עדיין אפשר לעשות זאת, אבל תתבצע יותר יצירת קומפוזיציה מחדש מאשר בעבר. כתוצאה מכך, אנחנו מצמצמים באופן משמעותי את כמות המינויים למצבים בכל הקוד של Material, והשינוי ישפיע על עלות ההפעלה הראשונית ועל עלות זמן הריצה בתרחישי שימוש רגילים יותר. (Ic447d, ‏ b/297212873)
  • לא מתבצעת יותר אנימציה של הגבהה טונלית במצבי אינטראקציה שונים כדי להתאים למפרט. (Icdd12)

שינויים ב-API

  • הוספנו BottomAppBar חדש שמקבל פרמטר BottomAppBarScrollBehavior כדי להסתיר אותו באופן אוטומטי כשגוללים בתוכן. הוספנו גם את FabPosition.EndOverlay שמאפשר ללחצן ה-FAB להופיע מעל סרגל האפליקציות התחתון ב-Scaffold, במקום להיות מוצמדים מעליו. (Iecb47)
  • הוספנו רכיב תווית פשוט שמבוסס על BasicTooltipBox, שלא נסגר כשמקישים מחוץ לגבולות התווית. (I821f9)

תיקוני באגים

  • הוסרה האפשרות להשתמש ב-rememberSaveable לתיאורי כלים. (Icc131, ‏ b/299500338)
  • הוספנו דגל זמני כדי לקבוע אם Scaffold מודד את הצאצאים שלו במהלך המדידה או במהלך המיקום. כברירת מחדל, המדידה תתבצע במדידה. אם נתקלתם בבעיות בהתנהגות החדשה, תוכלו לדווח על הבעיה. (I0b354)
  • תיקון של מודעות אופקיות בפורמט Edge to Edge ב-BottomSheet באמצעות המדידה הנכונה של רוחב המסך של המכשיר. (I1df0c, ‏ b/299058752)
  • תוקן באג שגרם לכך ש-ModalBottomSheet לא הפעיל את onDismissedRequest כשסגרו אותו על ידי החלקה למטה בגיליון. (Idfdd8)

גרסה 1.2.0-alpha07

6 בספטמבר 2023

androidx.compose.material3:material3-*:1.2.0-alpha07 משוחרר. גרסה 1.2.0-alpha07 מכילה את ההצהרות האלה.

תכונות חדשות

  • תמיכה בסמלים שמשוכפלים באופן אוטומטי נוספה ב-compose material 1.6.0-alpha05. פרטים על סמלים שמשוכפלים באופן אוטומטי מופיעים בהערות המוצר.

שינויים ב-API

  • SliderState מטמיע את DraggableState (I9b116)
  • משנים את shape לפרמטר חובה. משנים את השם של position ל-index בפונקציית העזר של הצורה. (I34941)
  • העדכון מוסיף למאפיין DatePicker formatWithSkeleton מפה שמשמשת כמטמון לשיפור הביצועים. (I3195f)
  • הוספנו את BasicTooltipBox ל-compose.foundation ועדכנו את PlainTooltipBox ו-RichTooltipBox כך שישתמשו ב-TooltipBox עם רכיבי PlainTooltip ו-RichTooltip חדשים. (I79e1d)

תיקוני באגים

  • הפונקציות dynamicLightColorScheme ו-dynamicDarkColorScheme מחזירות עכשיו צבעים עם רמת צבע גבוהה יותר לתפקידי פני השטח ולתפקידים מסוג surfaceContainer. (I5e901)
  • תוקנה בעיה שבה רכיבים מסוימים שמשתמשים ב-Subcomposition (למשל BottomSheetScaffold) בתוך Scaffold בתוך LookaheadScope ניסו לקרוא את הגודל שלהם מוקדם מדי. (I297b4, ‏ I871f1, ‏ b/295536718)

גרסה 1.2.0-alpha06

23 באוגוסט 2023

androidx.compose.material3:material3-*:1.2.0-alpha06 משוחרר. גרסה 1.2.0-alpha06 מכילה את ההצהרות האלה.

תיקוני באגים

  • תיקון החישוב של offset ב-DropdownMenu, כך שההיסטים ב-x תלויים אך ורק בכיוון הפריסה המקומי, וההיסטים ב-y לא יהיו עוד הפוכים כשהתפריט נמצא ליד החלק התחתון של המסך. (Iccc74, ‏ b/294103942)
  • תיקון החישוב של offset ב-DropdownMenu, כך שההיסטים ב-x תלויים אך ורק בכיוון הפריסה המקומי, וההיסטים ב-y לא יהיו עוד הפוכים כשהתפריט נמצא ליד החלק התחתון של המסך. (Ib87a2, ‏ b/294103942)

גרסה 1.2.0-alpha05

9 באוגוסט 2023

androidx.compose.material3:material3-*:1.2.0-alpha05 משוחרר. גרסה 1.2.0-alpha05 מכילה את ההוספות האלה.

שינויים ב-API

  • עדכונים בצבעים של תיבת הסימון ושל TriStateCheckbox. עכשיו, ה-CheckboxDefaults.colors() disabledUncheckedColor משפיע רק על גבול תיבת הסימון. במקרים מיוחדים שבהם צריך להגדיר את צבע התיבה הפנימית כשהיא מושבתת ולא מסומנת, צריך ליצור מופע בהתאמה אישית של CheckboxColors עם ערכי הצבע הרצויים. (I77d17, ‏ b/291943198)

גרסה 1.2.0-alpha04

26 ביולי 2023

androidx.compose.material3:material3-*:1.2.0-alpha04 משוחרר. גרסה 1.2.0-alpha04 מכילה את ההוספות האלה.

תכונות חדשות

  • ממשק API ניסיוני של לחצן פילוח (Ifc8fb)
  • עכשיו יש לפרמטר של חלוקה פרמטר לכיוון, כדי לתמוך בחלוקות אנכיות. (I4c899, ‏ b/288438593)

שינויים ב-API

  • אנחנו מעבירים את התלות בצפיפות לרמת הרכיב. ההנחיה הזו רלוונטית לרכיבים הבאים: SwipeToDismiss ורכיבים שמבוססים על גיליונות. צריך להשתמש במטען יתר החדש שסופק, כאשר הצפיפות היא פרמטר. (I1846e)
  • הערות נוספות לציון הקלטות המותרות לרכיבים הניתנים לשילוב (Ief234)
  • מוסיפים פרמטר של סמל ללחצן מפולח, מפצלים את הסמנטיקה כך שאפשר יהיה לבחור לחצנים מפולחים כדי להטמיע בחירה יחידה, ולעבור ביניהם כדי להטמיע בחירה מרובה, באמצעות SelectableSegmentedButtonRow ו-ToggelableSegmentedButtonRow בהתאמה. (I38740)
  • השם של פונקציית המחיצה השתנה ל-HorizontalDivider. נוספה פונקציונליות של VerticalDivider. (I5975c)
  • כדי לצמצם את השימוש ב-autoboxing, מומלץ להחליף את השימוש ב-ClosedFloatingPointRange ב-FloatRange קל יותר בממשקי ה-API הניסיוניים של Material3. (I4aab5)
  • נוספה התאמה חדשה ל-Start עבור FabPosition‏ (Ib7aea, ‏ b/170592777)

תיקוני באגים

  • ModalBottomSheet מתייחס לכיוון של הפריסה המקומית. (Ib4f44, ‏ b/285628622)

גרסה 1.2.0-alpha03

21 ביוני 2023

androidx.compose.material3:material3-*:1.2.0-alpha03 משוחרר. גרסה 1.2.0-alpha03 כוללת את ההוספות האלה.

שינויים בהתנהגות

  • includeFontPadding הוא עכשיו false כברירת מחדל בגופנים של Material 3. גם סגנון ברירת המחדל של גובה השורה השתנה ל-Trim.None ול-Alignment.Center, ונוספו lineHeight מפורשים (ב-sp) ל-TextStyle של Typography. אם אתם רוצים להתאים אישית את הערכים האלה, תוכלו לעיין במסמכי התיעוד של ה-API. בפוסט הזה בבלוג מוסבר בהרחבה על השינויים האלה. (I6266f, ‏ Icabc3)

תכונות חדשות

  • נוספה עומס יתר ל-RangeSlider, שהוא גרסה עם שמירת מצב של הרכיב. נוצר RangeSliderState שמכיל את כל המידע על הטראק הפעיל הנוכחי, את המדידות של הרכיבים של RangeSlider ואת הלוגיקה של תנועות הגרירה והמחווה. (I8c270)
  • סרגל החיפוש תומך עכשיו בצללים באמצעות הפרמטר shadowElevation שנוסף לאחרונה. (Ia5369, ‏ b/271040353)
  • ColorScheme תומך עכשיו בתפקידים חדשים של SurfaceContainer.
  • עכשיו אפשר להשבית את שכבת-העל של הגובה הטונלי של פני השטח באמצעות ה-local של הקומפוזיציה LocalTonalElevationEnabled. (Ic203c, ‏ b/277774590)

שינויים ב-API

  • פותחים את המאפיינים ה-constructors של צבעי הרכיבים. (I8c4a6)
  • הוספת פרמטר focusable לשני ממשקי ה-API של חלון העזר, כדי שמפתחים יוכלו לקבוע אם חלון העזר יטפל באירועי מגע או לא. חשוב לזכור שהפעולה הזו עלולה לשבש את הסריקה האוטומטית של מוקד הנגישות. (Ie32d8)
  • אופטימיזציה של הנגישות לביצועים ולהקצאות זיכרון. (Iede48)
  • חשיפת DefaultSizeClasses ויצירת StandardSizeClasses עבור WindowSizeClasses (I91838)
  • שינוי WindowWidth/HeightSizeClass למחלקות של ערכי float (Ie686e)

תיקוני באגים

  • הפרמטר contentWindowInsets של Scaffold מתייחס עכשיו לחלקים מחלון שנמצאים בשימוש. חשוב לדעת שההתנהגות של התמלאו של התוכן על סמך topBar ו-bottomBar לא משתנה כשמציינים את הפרמטרים האלה. (I08b73, ‏ b/264601542)
  • צריך לתקן את היישור של סרגל האפליקציות בחלק העליון של המסך כדי לוודא ששם ארוך לא ייגרם לעיבוד מעל סמלי הפעולות או סמל הניווט. (I4369f, ‏ b/236994621)
  • עכשיו, מיקומי הכרטיסיות אוכפים רוחב תוכן מינימלי של 24dp. כך אפשר להקיש על הסמנים של הכרטיסיות. (Id8861)
  • עכשיו יש תמיכה בתפקידי פלטפורמה חדשים בצבעים דינמיים מ-dynamicLightColorScheme ומ-dynamicDarkColorScheme. (I1252e)
  • עדכון ההתאמה של התראות התגים כך שלא ייחתכו כשהן נתקלות באב-הסב. (Idf75a)

גרסה 1.2.0-alpha02

24 במאי 2023

androidx.compose.material3:material3-*:1.2.0-alpha02 משוחרר. גרסה 1.2.0-alpha02 מכילה את ההוספות האלה.

שינויים ב-API

  • מוסיפים את הפרמטר window insets אל ModalBottomSheet.
    • עכשיו אפשר לצייר מחיצה של ModalBottomSheet מאחורי סרגל הסטטוס כשהערך של windowInsets מוגדר לאפס
    • עדכון ברירת המחדל של הפונקציונליות של ModalBottomSheet כדי להישאר מחוץ לסרגלי המערכת, כולל הניווט
    • הטיפול בהכנסה של שורת הסטטוס נעשה באמצעות ידית גרירה במצב צפייה מקצה לקצה.
    • BottomSheetDefaults כולל חלונות מוטמעים ל-BottomSheetWindow. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
  • מומלץ להוציא משימוש את Indicator ולהוסיף את Primary/SecondaryIndicator כדי להתאים למפרטי M3. PrimaryIndicator תואם לרוחב התוכן בכרטיסייה, ואילו SecondaryIndicator משתרע על כל הרוחב הזמין. SecondaryIndicator זהה ל-Indicator שהוצא משימוש, וניתן להשתמש בו כתחליף ישיר. (I27604)
  • נוספה אפשרות להעביר ScrollState בזמן יצירת DropdownMenu או ExposedDropdownMenu כדי לשלוט במצב הגלילה האנכית של פריטי התפריט המוצגים. (Ia0734, ‏ b/185304441)
  • נוספה עומס יתר ל-Slider, שהוא גרסה עם שמירת מצב של הרכיב. נוצר SliderState שמכיל את כל המידע על הטראק הפעיל הנוכחי, את המדידות של הרכיבים של Slider ואת הלוגיקה של תנועות הגרירה והמחווה. (I124a5)
  • שינוי השם של נכס הסמנטיקה isContainer ל-isTraversalGroup (I121f6)
  • הוספנו TextStyle.merge(...) מותאם עם רשימת פרמטרים מלאה. (Iad234, ‏ b/246961787)
  • יצרתם ממשקים ציבוריים ל-TooltipState, ל-RichTooltipState ול-PlainTooltipState. נוספו RichTooltipStateImpl ו-PlainTooltipStateImpl למצבי ברירת המחדל. נוספו פונקציות remember*State כדי לקבל את המצבים המוטמעים האלה. הוסר TooltipSync לטובת TooltipDefault.GlobalMutatorMutex. (I7813d)
  • עדכנו את DatePickerColors כך שיכלול אפשרויות נוספות להתאמה אישית של הצבעים של המחיצה, הניווט ושדות הקלט של הטקסט בבורר התאריכים. (I1a685, b/274626815)
  • DatePickerState ו-DateRangePickerState הם עכשיו ממשקים ציבוריים עם הטמעות ברירת מחדל שאפשר לאחזר באמצעות rememberDatePickerState ו-rememberDateRangePickerState. (I71c52)
  • הסרנו את dateValidator מ-DatePicker ומ-DateRangePicker והוספנו ממשק SelectableDates שאפשר להגדיר במדינה כדי לקבוע אילו תאריכים או שנים יהיו ניתנים לבחירה בממשק המשתמש. (Ic2fc6)
  • TimePicker הוסרה מ-API היציב, צפויים שינויים נוספים ב-API המצב (I3f39a)
  • ModalBottomSheet הועברה ל-Android בלבד. לא מומלץ להשתמש ב-ModalBottomSheet במחשב, והפונקציונליות לא מתוחזקת באופן פעיל. (Ib3778)

תיקוני באגים

  • תוקנה הפעולה AlertDialog לסגירת תיבת הדו-שיח, כך שהיא תופיע מתחת לפעולת האישור כשהפעולות מוערמות זו על גבי זו כדי להתאים לרוחב של תיבת הדו-שיח. התיקון הזה מביא את ההטמעה לקו אחד עם המפרט של Material Design. (I029de, ‏ b/235454277)
  • תוקן באג ב-ListItem שבו נעשה שימוש בתמונה חסרה לפריטים של שלוש שורות. (I6e235)
  • עכשיו אפשר להציג את מקלדת ה-IME ב-ModalBottomSheet (Idc508, ‏ b/262140644, ‏ b/268380384, ‏ b/272483584)

גרסה 1.2.0-alpha01

10 במאי 2023

androidx.compose.material3:material3:1.2.0-alpha01 ו-androidx.compose.material3:material3-window-size-class:1.2.0-alpha01 משוחררים. גרסה 1.2.0-alpha01 כוללת את ההוספות האלה.

גרסה 1.1

גרסה 1.1.2

20 בספטמבר 2023

androidx.compose.material3:material3:1.1.2 ו-androidx.compose.material3:material3-window-size-class:1.1.2 משוחררים. גרסה 1.1.2 כוללת את השמירות האלה.

תיקוני באגים

  • שינוי קבוע מועבר באופן שגוי לשני רכיבים שניתנים לשילוב. (b/282761472)
  • TimePickerState המתוקן מחזיר שעות שגויות כשמאתחלים אותו עם 23 שעות. (b/278242122)
  • תוקן מצב המתג הראשוני לאימות השעה 12:00 והדקה. (b/269768197, ‏ b/282790635)
  • תוקנה השגיאה שבה state.hour מחזיר ערך שגוי בשעה 23:00. (b/282761472, ‏ b/278242122)

גרסה 1.1.1

21 ביוני 2023

androidx.compose.material3:material3:1.1.1 ו-androidx.compose.material3:material3-window-size-class:1.1.1 משוחררים. גרסה 1.1.1 מכילה את השמירות האלה.

תיקוני באגים

  • הוספת קריאה ל-ModalBottomSheet ללא הפרמטר windowInset לצורך תאימות בינארית. (Ib7959)
  • מוסיפים את הפרמטר window insets אל ModalBottomSheet.
    • עכשיו אפשר לצייר מחיצה של ModalBottomSheet מאחורי סרגל הסטטוס כשהערך של windowInsets מוגדר לאפס
    • עדכון ברירת המחדל של הפונקציונליות של ModalBottomSheet כדי להישאר מחוץ לסרגלי המערכת, כולל הניווט
    • הטיפול בהכנסה של שורת הסטטוס נעשה באמצעות ידית גרירה במצב צפייה מקצה לקצה.
    • BottomSheetDefaults כולל חלונות מוטמעים ל-BottomSheetWindow. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)

גרסה 1.1.0

10 במאי 2023

androidx.compose.material3:material3:1.1.0 ו-androidx.compose.material3:material3-window-size-class:1.1.0 משוחררים. גרסה 1.1.0 כוללת את השמירות האלה.

תכונות עיקריות בגרסה 1.1.0

רכיבים חדשים של Material Design 3

שיפורים ברכיבים קיימים של Material Design 3

שדרגנו ממשקי API ניסיוניים למצב יציב!

בפוסט הזה בבלוג אפשר לקרוא פרטים נוספים.

גרסה 1.1.0-rc01

19 באפריל 2023

androidx.compose.material3:material3:1.1.0-rc01 ו-androidx.compose.material3:material3-window-size-class:1.1.0-rc01 משוחררים. גרסה 1.1.0-rc01 כוללת את השמירות האלה.

שינויים ב-API

  • TimePicker הוסרה מ-API היציב, צפויים שינויים נוספים ב-API המצב (I3f39a)
  • ModalBottomSheet הועברה ל-Android בלבד. לא מומלץ להשתמש ב-ModalBottomSheet במחשב, והפונקציונליות לא מתוחזקת באופן פעיל. (Ib3778)

גרסה 1.1.0-beta02

5 באפריל 2023

androidx.compose.material3:material3:1.1.0-beta02 ו-androidx.compose.material3:material3-window-size-class:1.1.0-beta02 משוחררים. גרסה 1.1.0-beta02 כוללת את ההצהרות האלה.

שינויים ב-API

  • ל-SheetState יש עכשיו פרמטר skipHiddenState אופציונלי
  • ל-rememberStandardBottomSheetState יש עכשיו פרמטר skipHiddenState אופציונלי
  • עכשיו יש ל-BottomSheetScaffold עוגן מוסתר מוגדר, אבל הוא מושבת כברירת מחדל
  • SheetState.requireOffset המסמכים עודכנו
  • השם של BottomSheetDefaults.MinimizedShape השתנה ל-BottomSheetDefaults.HiddenShape (I839f4, ‏ b/273870234)

תיקוני באגים

  • אין להחליף את תצוגת השעון משעה לדקה כשהתכונה 'גילוי באמצעות מגע' מופעלת. (I717d0)
  • הסמנטיקה של ModalBottomSheet ושל BottomSheetScaffold לידן ידית גרירה משולבות עכשיו. (I05afb)
  • הפרמטרים המשתנים BottomSheetScaffold, ‏ containerColor ו-contentColor משפיעים עכשיו רק על התוכן. (I992cb)
  • BottomSheetScaffold nestedScroll לתוכן של הגיליונות מוטמעים עכשיו תנועות זריזות. (I992cb)

גרסה 1.1.0-beta01

22 במרץ 2023

androidx.compose.material3:material3:1.1.0-beta01 ו-androidx.compose.material3:material3-window-size-class:1.1.0-beta01 משוחררים. גרסה 1.1.0-beta01 כוללת את ההצהרות האלה.

שינויים ב-API

  • הוספת פרמטר מסוג פריסת TimePicker ל-composable. הוא מאפשר להשתמש בפריסות שונות, בהתאם להגדרת המסך (Ia0e16)
  • SearchBarDefaults סומן כניסוי. (I65561)
  • הוספת הגבהה של צל ל-BottomSheetScaffold (I94e0f)
  • נוספה תמיכה בתצוגה של בוררי התאריכים ללא החלק של הכותרת. שינויים ב-API שמאפשרים להעביר כותרת null כשיוצרים חלונית לבחירת תאריך. עכשיו אפשר להעביר ערכים null ל-headline, ל-title ול-showToggleMode = false כדי להציג בורר ללא ראש. (Id3f3a, ‏ b/266132421, ‏ b/267194809)

תיקוני באגים

  • עכשיו, כששורות החיפוש לא פעילות, המוקד בהן מתבטל באופן אוטומטי. (I22a7c, ‏ b/261444487)
  • עדכנו את DateRangePicker כדי לאפשר בחירת טווח עם אותו תאריך להתחלה ולסיום. (I16529, ‏ b/272882497)
  • שדות הטקסט ממוקמים עכשיו בצורה נכונה את רכיבי הטקסט שלהם כשגודל הגופן קטן מהצפוי. כתוצאה מכך, יכול להיות שינוי של כמה פיקסלים באפליקציות בהתאם להגדרות הגופן ולסקריפט. (I8b8d0)
  • לפעולות הסמנטיות של הכרטיסייה התחתונה יש עכשיו תוויות. (I277b0)

גרסה 1.1.0-alpha08

8 במרץ 2023

androidx.compose.material3:material3:1.1.0-alpha08 ו-androidx.compose.material3:material3-window-size-class:1.1.0-alpha08 משוחררים. גרסה 1.1.0-alpha08 מכילה את ההצהרות האלה.

תכונות חדשות

  • הוספנו תמיכה ב-BottomSheetScaffold וב-BottomSheetScaffoldState. (I063d4)

שינויים ב-API

  • נוספה פונקציונליות ל-DatePickerState ול-DateRangePickerState כדי לאפשר הגדרת תאריכים אחרי היצירה הראשונית של המצב, וגם איפוס הבחירות על ידי הגדרת חותמות זמן null. צריך להיזהר כשמגדירים תאריכים באופן ידני, ופונקציית setSelection החדשה תשליך חריג במקרה שתאריך מסוים לא עומד בתנאי מקדים (ראו מסמכי העזרה). (Ifa645, ‏ b/268609314, ‏ b/270427389)
  • שינוי השם של SheetValue 'מכווץ' ל-PartiallyExpanded כדי לתאר בצורה מדויקת וגמישה יותר את ההתנהגות במצב הזה. (Ia1491)
  • שמות הפרמטרים של ListItem עודכנו ל-‎_content במקום ל-‎_text. פונקציות ה-getter שמוגדרות כברירת מחדל הן עכשיו ReadOnlyComposables במקרים הרלוונטיים. (I69a25)
  • הוצאת ממשקי API אינטראקטיביים של Surface מהסטטוס 'ניסיוני'. (I90d59, ‏ b/261561812)

תיקוני באגים

  • תוקנה בעיה שבה המצב HalfExpanded של ModalBottomSheet חושב בצורה שגויה והגיליון נראה כמרחף. (I45e84, ‏ b/268411386)
  • מוסיפים את הסימון confirmValueChange כדי להקיש על ModalBottomSheet. (I2311a, ‏ b/270425759)
  • מעבירים פעולות סמנטיות של BottomSheet לנקודת אחיזה לגרירה. (I158ba)
  • ModalBottomSheet עכשיו מפעיל את המיקוד בזמן ההפעלה ומטפל בלחצן 'הקודם'. (I4d2ab)
  • עכשיו המערכת מטפלת ב-ModalBottomSheet onDismissRequest גם במהלך תנועות גלילה בתצוגה בתצוגה בתצוגה. (I655c5, ‏ b/268433166)

גרסה 1.1.0-alpha07

22 בפברואר 2023

androidx.compose.material3:material3:1.1.0-alpha07 ו-androidx.compose.material3:material3-window-size-class:1.1.0-alpha07 משוחררים. גרסה 1.1.0-alpha07 מכילה את ההוספות האלה.

תכונות חדשות

  • הוספת רכיב מורכב של קלט זמן שעובד עם rememberTimePickerState(), בהתאם למפרט M3 של קלט זמן (Ia4fab)
  • הוספנו ממשק API של Material 3‏ DateRangePicker לבחירת טווח תאריכים. (I7a6c3, ‏ b/267194809)
  • הוספנו תמיכה במצב קלט של Material 3 לבחירת טווחי תאריכים דרך ה-API של DateRangePicker. (Ifdbc4)
  • עכשיו אפשר להתאים אישית את הצבעים של שדות הטקסט:
    • צבעי הטקסט של שדה הקלט והתו המציין את המקום שבו צריך להזין טקסט מבוססים על מצב המיקוד ומצב השגיאה. השם של הפרמטר textColor השתנה ל-unfocusedTextColor, והשם של placeholderColor השתנה ל-unfocusedPlaceholderColor.
    • צבע המאגר של שדות טקסט מלאים על סמך מצב השגיאה באמצעות הפרמטר החדש errorContainerColor.
  • צבעי שדות הטקסט של תפריטים נפתחים שגלויים לכולם עודכנו עם פרמטרים לתמיכה ב-API החדש של הקידומת והסיומת. (I9c8b4, ‏ b/254284181, ‏ b/264766350)

שינויים ב-API

  • החזרה לגרסאות מסוימות של Slider API והסרה של עומסי יתר מיותרים של Slider, שאפשר להשתמש בהם באמצעות Slider הניסיוני החדש עם טרקר ואצבע גלילה בהתאמה אישית. העלאת RangeSlider לגרסה יציבה. (Ie8fbd)
  • השם של defaultElevation השתנה ל-elevation בפונקציות הגובה של הצ'יפ. (I0f872)
  • ממשקי ה-API הבאים של שדות טקסט ב-Material 3 כבר לא נחשבים לניסיוניים: TextField, ‏ OutlinedTextField, ‏ textFieldWithLabelPadding, ‏ textFieldWithoutLabelPadding, ‏ outlinedTextFieldPadding. (Ieb5c0, ‏ b/261561819)
  • TimePickers is24Hour משתמש בהגדרת המערכת (I18856)
  • הסרת הערה ניסיונית מ-API של תבניות. (Ibb51e, ‏ b/261565765, ‏ b/261436953)

תיקוני באגים

  • עכשיו, ModalBottomSheet תמיד מוגדר כ-SheetDefaults.ExpandedShape. (I0dfca)
  • שיפורי נגישות לחומר 3 DatePicker ו-DateRangePicker. (I5087e)
  • תיקון באג שבו מגבלה על גובה מקסימלי מופצת ועשויה לגרום לקריסה. (I30d8c)
  • הסרת תפקידים סמנטיים משטחים שניתן ללחוץ עליהם ולבחור אותם, עדכון רכיבים שהשתמשו בהם להגדרת תפקידים באמצעות modifier.semantics (I793d9)

גרסה 1.1.0-alpha06

8 בפברואר 2023

androidx.compose.material3:material3:1.1.0-alpha06 ו-androidx.compose.material3:material3-window-size-class:1.1.0-alpha06 משוחררים. גרסה 1.1.0-alpha06 מכילה את ההוספות האלה.

תכונות חדשות

  • שדות טקסט תומכים עכשיו בטקסט של קידומת וסיומת (Ia8578, ‏ b/179884561)
  • נוספה פונקציית TimePicker להצגת בורר זמן בהתאם למפרט של Material 3, שמשמשת בשילוב עם TimePickerState ועם שיטת הנוחות rememberTimePickerState (I71910)
  • קלט תאריך הוא עכשיו מצב תצוגה ב-DatePicker. הוספנו תמיכה במעבר בין מצב בחירת תאריך למצב הזנת תאריך. (Ieeff7)
  • הוספנו API ל-RichTextTooltips. (I58ef3)
  • הטמעה של גיליון תחתון מודלי ל-Material 3, כולל ModalBottomSheet ו-ModalBottomSheetDefaults. הוספנו גם את SheetState ו-rememberSheetState, שאפשר להשתמש בהם לרכיבים עתידיים של גיליונות. (I0853a, ‏ b/244189383)

שינויים ב-API

  • יציבות של ממשק ה-API showSnackbar (I195c2, ‏ b/261424370)
  • שיפור היציבות של ממשקי ה-API לצ'יפ העזרה ולצ'יפ ההצעות (Ibb67b, ‏ b/261424370)
  • שדרוג ממשקי ה-API של ListItem, ‏ ListItemDefaults ו-ListItemColors לממשקים לא ניסיוניים (I7e7fa, ‏ b/261438882)
  • שדרוג של SliderPositions, ‏ SliderDefaults.Thumb ו-SliderDefaults.Track למצב יציב והוספה של ממשקי API מסוג Slider ו-RangeSlider שאינם ניסיוניים, שמכילים טראקים וסמליים מותאמים אישית. בנוסף, אנחנו מוציאים משימוש את ממשקי ה-API הקודמים Slider ו-RangeSlider. (Ie5ea6, ‏ b/261566890)
  • הפכנו את Modifier.tooltipAnchor() לציבורי, כדי שמפתחים יוכלו להעביר אותו למאחז כדי לציין שצריך להציג הסבר קצר בלחיצה ארוכה. עדכנו את ממשק ה-API של PlainTooltipBox כך ש-TooltipState לא יהיה nullable, ויש לו עכשיו ברירת מחדל. (Ie2fb7)
  • ProgressIndicatorDefaults.circularTrackColor סומן כ-@Composable כדי לשמור על עקביות. (Id29cc)
  • משחזרים את פונקציית ה-getter של המאפיין LocalMinimuTouchTargetEnforcement, מסמנים אותה כ'הוצאה משימוש' ומעבירים לכתובת LocalMinimumInteractiveComponentEnforcement. (I60dd5)

גרסה 1.1.0-alpha05

26 בינואר 2023

androidx.compose.material3:material3:1.1.0-alpha05 ו-androidx.compose.material3:material3-window-size-class:1.1.0-alpha05 משוחררים. גרסה 1.1.0-alpha05 מכילה את ההצהרות האלה.

תכונות חדשות

  • DatePickerDialog ותמיכה בנגישות
  • הוספנו תמונה ממוזערת וטראק בהתאמה אישית ל-RangeSlider.

עדכוני יחסי תלות

  • עכשיו, Compose UI ו-Compose Material תלויים ב-Lifecycle 2.6.0.

גרסה 1.1.0-alpha04

11 בינואר 2023

androidx.compose.material3:material3:1.1.0-alpha04 ו-androidx.compose.material3:material3-window-size-class:1.1.0-alpha04 משוחררים. גרסה 1.1.0-alpha04 מכילה את ההוספות האלה.

תכונות חדשות

  • ממשק API ראשוני של DatePicker לבחירת תאריך אחד באמצעות ממשק משתמש של יומן. ממשק ה-API הזה עדיין עובר שינויים. (I722b9)
  • הוספנו תמיכה בהצגת טיפים פשוטים באמצעות PlainTooltipBox. (I0cdfb)
  • סרגל חיפוש (Iad128)
  • SwipeToDismiss (I458a8, ‏ b/242889540)

שינויים ב-API

  • הוספה בנכס הסמנטיקה IsContainer בפלטפורמות. המאפיין הזה ישמש בשינוי מאוחר יותר שיקבע את סדר הסריקה על סמך המשמעות הסמנטית של רכיבים כמו משטחים. (I63379)
  • סימון ממשקי API שקשורים לחלונית ההזזה לניווט כיציבים. (Iab01e, ‏ b/261439597)
  • הוספנו פרמטר של צבע הטראק לאינדיקטורים של התקדמות מעגלית, ופרמטר של קצה קו גם לאינדיקטורים של התקדמות מעגלית וגם לאינדיקטורים של התקדמות ליניארית. (Ie668c, ‏ b/216325962, ‏ b/222964817)
  • אפשרות נוספת לאפשרות האפס של טיפוס ההחזרה של פונקציות מוסתרות שהוצאו משימוש (Ibf7b0)
  • מוסיפים את Modifier.minimumInteractiveComponentSize. אפשר להשתמש בו כדי להקצות שטח בגודל של 48dp לפחות, כדי להבדיל בין אינטראקציות מגע אם הרכיב יהיה קטן יותר. (I33f58, ‏ b/258495559)
  • הוספנו ממשק API ניסיוני לרכיב AlertDialog שאפשר לשלב עם רכיבים אחרים ויש לו מקום להצגת תוכן. (Iec4a2)

תיקוני באגים

  • ההתקדמות של אינדיקטורים של התקדמות מוגבלת עכשיו כראוי לטווח הצפוי שלה. (I8a7eb, ‏ b/262262727)

בעיה ידועה

  • כשמעדכנים מ-androidx.compose.foundation:1.4.0-alpha03 ל-androidx.compose.foundation:1.4.0-alpha04, יכול להיות שתופיע השגיאה java.lang.NoSuchFieldError. כאן דווחה הבעיה במקור. שלחנו תיקון והוא יהיה זמין בעדכון הבא של Compose. כפתרון זמני, אפשר לעדכן את הספריות androidx.compose.material ו-androidx.compose.material3 לגרסה האחרונה(1.1.0-alpha04) או לשדרג לאחור את androidx.compose.foundation לגרסה 1.4.0-alpha03.

גרסה 1.1.0-alpha03

7 בדצמבר 2022

androidx.compose.material3:material3:1.1.0-alpha03 ו-androidx.compose.material3:material3-window-size-class:1.1.0-alpha03 משוחררים. גרסה 1.1.0-alpha03 כוללת את ההוספות האלה.

שינויים ב-API

  • שינינו את השם של consumedWindowInsets() ל-consumeWindowInsets() ואת השם של withConsumedWindowInsets() ל-onConsumedWindowInsetsChanged(), והפכנו את המודификаторים לציבוריים. (Ie44e1)
  • הוספת מרווח פנימי חדש לתוכן כברירת מחדל ללחצן טקסט עם סמל לשימוש. (I8f662)
  • נוספו צבעים מושבתים לסרגל הניווט ולפס הניווט. (Ia7892, b/258867034)
  • הוספנו Modifier API לשליחת שאילתות לגבי פרטי גלילה של ישויות אב. (I2ba9d, ‏ b/203141462)
  • משמש ב-Clickable כדי לעכב בצורה נכונה אינטראקציות של הקשה, כשתנועות עלולות להפוך לאירועי גלילה.
  • תוקנה בעיה שבה Clickables לא עכב את הרטט בצורה נכונה כשמשתמשים בו בתוך Scrollable ViewGroup.
  • עדכנו את התכונות 'תיבות הצירים' ו'גיליונות' כדי לעכב בצורה נכונה את הלחיצות במקרה שהתנועות עלולות להפוך לאירועי גלילה.

עדכוני יחסי תלות

  • עכשיו, Compose UI ו-Compose Material תלויים ב-Lifecycle 2.5.1. (I05ab0, ‏ b/258038814)

גרסה 1.1.0-alpha02

9 בנובמבר 2022

androidx.compose.material3:material3:1.1.0-alpha02 ו-androidx.compose.material3:material3-window-size-class:1.1.0-alpha02 משוחררים. גרסה 1.1.0-alpha02 מכילה את ההוספות האלה.

שינויים ב-API

  • עכשיו אפשר להשתמש ב-PointerEventPass ב-awaitFirstDown וב-waitForUpOrCancellation כדי לקבל גמישות רבה יותר (תיקון גם לבעיה שבה ExposedDropdownMenuBox מציג תפריט בזמן גלילה).(I7579a, b/212091796)
  • נוספו הפרמטרים minLines, TextField ו-OutlinedTextField לטקסט של material ו-material3, שמאפשרים להגדיר את הגובה המינימלי של הרכיב לפי מספר השורות (I4af1d)
  • מומלץ להפסיק להשתמש בפונקציה TopAppBarDefaults smallTopAppBarColors ולהשתמש בפונקציה topAppBarColors חדשה כשיוצרים TopAppBar. (Ie6cb9)
  • הפרמטר minLines נוסף ל-BasicText ול-BasicTextField. הוא מאפשר להגדיר את הגובה המינימלי של הרכיבים האלה במונחים של מספר שורות (I24294, ‏ b/122476634)

תיקוני באגים

  • חותכים את התוכן של IconButton ו-IconToggleBotton של Material3 לצורה של שכבת המצב של הרכיב (למשל, צורה עגולה). (I9da8f)
  • עדכנו את שורת האפליקציות העליונה בגודל בינוני וגדול של Material3 כך שיוצג בהם אותו צבע רקע בכל שטחן, ואפשר יהיה לשנות את צבעי ברירת המחדל בעזרת ערכי צבע שקופים. (I67659, ‏ b/249688556, ‏ b/250838918)

גרסה 1.1.0-alpha01

24 באוקטובר 2022

androidx.compose.material3:material3:1.1.0-alpha01 ו-androidx.compose.material3:material3-window-size-class:1.1.0-alpha01 משוחררים. גרסה 1.1.0-alpha01 כוללת את ההוספות האלה.

תיקוני באגים

  • הכותרת מוצמדת לסרגל האפליקציות העליון כשהיא חלה באמצעות TextStyle ו-Brush. (If667e)

גירסה 1.0

גרסה 1.0.1

9 בנובמבר 2022

androidx.compose.material3:material3:1.0.1 ו-androidx.compose.material3:material3-window-size-class:1.0.1 משוחררים. גרסה 1.0.1 מכילה את ההצהרות האלה על ביצוע שינויים (commits).

תיקוני באגים

  • עדכנו את שורת האפליקציות העליונה בגודל בינוני וגדול של Material3 כך שיוצג בהם אותו צבע רקע בכל שטחן, ואפשר יהיה להגדיר ערכי צבע שקופים שיחליפו את צבעי ברירת המחדל. (I67659, ‏ b/249688556, ‏ b/250838918)

גרסה 1.0.0

24 באוקטובר 2022

androidx.compose.material3:material3:1.0.0 ו-androidx.compose.material3:material3-window-size-class:1.0.0 משוחררים. גרסה 1.0.0 כוללת את ההצהרות האלה.

תכונות עיקריות בגרסה 1.0.0

זוהי הגרסה היציבה הראשונה של Compose Material 3!

עיצוב לפי נושא של Material Design 3 וצבע דינמי של Material You

רכיבים של Material Design 3

סיווג גודל החלון

  • material3-window-size-class היא ספרייה חדשה שמספקת תמיכה בקטגוריות של גודל חלון: קבוצה של נקודות עצירה של אזור תצוגה, שמאפשרות לכם לעצב, לפתח ולבדוק פריסות של אפליקציות שניתן לשנות את הגודל שלהן. אפשר להשתמש ב-calculateWindowSizeClass כדי לאחזר מופע של סיווג גודל חלון, שבעזרתו אפשר לקבוע איך ממשק המשתמש ייראה. לדוגמה, אפשר להציג מסילה ניווט במקום ניווט בתחתית המסך בחלונות גדולים יותר. מידע נוסף ודוגמה לשימוש זמינים במאמרי העזרה של ה-API של WindowSizeClass.

  • בפוסט הזה בבלוג אפשר לקרוא פרטים נוספים.

גרסה 1.0.0-rc01

5 באוקטובר 2022

androidx.compose.material3:material3:1.0.0-rc01 ו-androidx.compose.material3:material3-window-size-class:1.0.0-rc01 משוחררים. גרסה 1.0.0-rc01 כוללת את ההוספות האלה.

שינויים ב-API

  • נוספו פרמטרים של משבצות שתומכים בהעברת טקסט ל-API של שדה טקסט (Iaac0d, ‏ b/227146125)

גרסה 1.0.0-beta03

21 בספטמבר 2022

androidx.compose.material3:material3:1.0.0-beta03 ו-androidx.compose.material3:material3-window-size-class:1.0.0-beta03 משוחררים. גרסה 1.0.0-beta03 מכילה את ההצהרות האלה.

שינויים ב-API

  • עכשיו אפשר להציג ב-ExposedDropdownMenuDefaults ערך של מרווח לפריטי תפריט. (I34ee1)
  • ל-ExposedDropdownMenuBoxScope יש עכשיו משתנה Modifier.menuAnchor() שצריך להעביר לשדה הטקסט כדי לקבל התנהגות תקינה של נגישות. (I27fa3)
  • הוספה של שתי שיטות עם עומס יתר ל-Slider API הנוכחי, כדי לאפשר למשתמשים להעביר תמונה ממוזערת או טראק כדי לאכלס את פס ההזזה. (I21c00)

תיקוני באגים

  • עדכנו את מיפוי הצבעים של העיצוב הכהה של 'קונטיינר של שגיאה' לגוון 90 (Ic5612)
  • תיקון שמאפשר להגדיר רקע שקוף בסרגלי האפליקציות הקטנים בחלק העליון של Material 3. (I645e2, ‏ b/245575782)

גרסה 1.0.0-beta02

7 בספטמבר 2022

androidx.compose.material3:material3:1.0.0-beta02 ו-androidx.compose.material3:material3-window-size-class:1.0.0-beta02 משוחררים. גרסה 1.0.0-beta02 מכילה את ההצהרות האלה.

שינויים ב-API

  • הרכיבים המוגדרים כברירת מחדל שנוספו לרכיבי m3 בגרסה beta01 כבר לא מביאים בחשבון את הרכיבים של IME.
  • לרכיב Material3 Scaffold יש עכשיו פרמטר contentWindowInsets, שמאפשר לציין את מספר הפריטים שרוצים לטפל בהם בחלונית התוכן. (Icf11a, ‏ b/243713323)
  • הוצאה משימוש של הפונקציה הניסיונית SmallTopAppBar של Material 3 והצגת פונקציה מקבילה TopAppBar. עליך להעביר את השימוש שלך לחשבון החדש. (I74404, ‏ b/226918634)
  • הוספת שליטה על ההתנהגות של משיכה וסגירה בתנועה של שורת האפליקציות העליונה. (I15c81)
  • הסרת startIndent מ-Divider והעברת הצבע לפרמטר האחרון. (If7be2)

תיקוני באגים

  • אפשר לגרום לתיבת דו-שיח לזהות את עצמה למשתמשים ב-TalkBack על ידי השמעת המילה 'תיבת דו-שיח' כשהיא מוצגת. (I857ef)

גרסה 1.0.0-beta01

24 באוגוסט 2022

androidx.compose.material3:material3:1.0.0-beta01 ו-androidx.compose.material3:material3-window-size-class:1.0.0-beta01 משוחררים. גרסה 1.0.0-beta01 כוללת את ההצהרות האלה.

הפניית API

כדי לראות את הנושאים, הרכיבים והרכיבים הניתנים לשילוב העדכניים ביותר, אפשר לעיין בסקירה הכללית של חומר העזר בנושא Compose Material 3 API.

שינויים ב-API

  • עדכנו את שורת האפליקציות העליונה בסגנון Material 3, כך שהיא יכולה לעבור ממצב מכווץ למצב מורחב. בנוסף, עדכנו את פונקציית ההתנהגות TopAppBarDefaults כך שתהיה Composables, ותספק ערכים שמוגדרים כברירת מחדל לסטטוס ולמפרט האנימציה של שורת האפליקציות העליונה. (I642b3)
  • חתימות מעודכנות של רכיבי FAB בהתאם ל-Surface API (I3afaa)
  • הוספנו תמיכה מובנית ברכיבי משנה (insets) בסרגלי האפליקציות העליונים, בחלוניות האחסון, בסרגל הניווט ובפס הניווט. כשמשתמשים ברכיבים האלה בנפרד או עם Scaffold, הם מטפלים באופן אוטומטי בהוספת רכיבים פנימיים למפתחים. הערה: השינוי הזה לא מוסיף טיפול אוטומטי בסמלים של שורת הסטטוס ובשקיפות של שורת הסטטוס וסרגל הניווט. כדי להבטיח את חוויית הצפייה הטובה ביותר מקצה לקצה, עליך להמשיך לבצע את הפעולה הזו באופן ידני. (I7e4e6, b/183161866)
  • ברירת המחדל של הרכיבים עודכנה כדי לצמצם את שטח ה-API, וכך לשפר את הגמישות והביצועים בעתיד. (I31820)
  • שינינו את הסדר של הפרמטרים של הכרטיסייה ושל גיליון התפריט הנפתח כדי לשמור על עקביות ב-API (I45d0b)
  • הוסר startIndent מ-Divider והצבע הועבר לפרמטר האחרון.(If7be2)

גרסה 1.0.0-alpha16

10 באוגוסט 2022

androidx.compose.material3:material3:1.0.0-alpha16 ו-androidx.compose.material3:material3-window-size-class:1.0.0-alpha16 משוחררים. גרסה 1.0.0-alpha16 מכילה את ההצהרות האלה על ביצוע שינויים (commits).

תכונות חדשות

  • תמיכה בהגדרת רוחב מותאם אישית בחלונית ההזזה לניווט. (Ia7f10)

שינויים ב-API

  • שינוי סדר הפרמטרים של הכרטיסייה Tab והכרטיסייה Leading icon כדי לשמור על עקביות ב-API (Ie2637)
  • BadgeDefaults סומן כניסיוני. (I98ef3)
  • הסרה של פונקציית חלונית ההזזה לניווט שהוצאה משימוש. (I4f2db)
  • שינוי הסדר של הפרמטרים של פס ההזזה ב-Material 3 כדי לשמור על עקביות ב-API (I0aee7)
  • שינוי הסדר של הפרמטרים NavigationBar ו-NavigationRail כדי לשמור על עקביות ב-API (I51cda)
  • שינוי הסדר של הפרמטרים ב-Material 3 כדי לשמור על עקביות ב-API. (If4ae1)
  • שינוי הסדר של הפרמטרים של פס ההזזה ב-Material 3 כדי לשמור על עקביות ב-API (I62673)
  • שינינו את השם של הפרמטר 'סמלים' ל'פעולות' כדי שיהיה עקבי עם שורת האפליקציות העליונה (Id75be)
  • כדאי לסמן את Badge ואת BadgedBox כניסיוניים כי עדיין יש שינויים בהתאמת העוגן. (I1712e, ‏ b/236524516)
  • שינוי ההערות @ExperimentalMaterial3Api בוריאנטים של לחצני סמלים ל-@OptIn (I070b5)
  • התוכן של חלונית הניווט הופרד לרכיב משתנה משלו כדי לאפשר לציין רוחב מותאם אישית. (Ia7f10)
  • הסרה של Divider מ-MenuDefaults ומ-TabDefaults (I4e33c)

גרסה 1.0.0-alpha15

27 ביולי 2022

androidx.compose.material3:material3:1.0.0-alpha15 ו-androidx.compose.material3:material3-window-size-class:1.0.0-alpha15 משוחררים. גרסה 1.0.0-alpha15 מכילה את ההצהרות האלה.

תכונות חדשות

  • לאפשר גרירה של סרגל האפליקציות העליון מהסרגל עצמו. (I65c00, ‏ b/205873416)

שינויים ב-API

  • עדכונים לממשקי ה-API FilterChip ו-ElevatedFilterChip כדי להסיר את החריץ selectedIcon ולעודד שימוש חוזר ב-leadingIcon להצגת מצב שנבחר. (Ie5dc2)
  • הוספת תפקידים של צבעים משתנים של פריימים מוצלים וקווי מתאר. (Id6d54)
  • תיקון מוסכמות מתן שמות לברירת מחדל שניתנת ליצירה. (I62b27)
  • מסמנים את ListItemDefaults ו-ListItemColors כניסיוניים. (I1f3ec)
  • שינויים ב-API של שורת האפליקציות העליונה כדי לשקף טוב יותר את המשמעות של מאפייני המצב שלה. בנוסף, צריך לסמן את ממשק ה-API של סרגל האפליקציות העליון כניסיוני. (Ic0ad8)
  • נוספו צבעים לבחירת טקסט ב-TextFieldColors כדי לשפר את החשיפה. (Iba1b8)
  • הוספת ButtonDefault.ButtonWithIconContentPadding לשימוש עם לחצנים שמכילים סמל. (I2bf9c)
  • שדות הטקסט סומנו כניסיוניים כדי לאפשר גמישות רבה יותר בשינויים עתידיים בממשקי ה-API. (I127b5)
  • הסרת ההערה @ExperimentalMaterial3Api מהפונקציה Checkbox. (I5eefc)
  • הסרת ההערה @ExperimentalMaterial3Api מהפונקציה RadioButton. (I17e2a)
  • הסרת ההערה @ExperimentalMaterial3Api מהכרטיסים הלא אינטראקטיביים. (I9bd49)
  • עדכון אובייקטים שונים של ברירת המחדל של רכיבים כך שיכללו צבעים, צורות וכו' (I96e11)

תיקוני באגים

  • הסרת סמלים לא פעילים בסוף דוגמאות של צ'יפים להזנה, כדי למנוע בלבול אצל המשתמשים באפליקציית הקטלוג. (I9846a)

גרסה 1.0.0-alpha14

29 ביוני 2022

androidx.compose.material3:material3:1.0.0-alpha14 ו-androidx.compose.material3:material3-window-size-class:1.0.0-alpha14 משוחררים. גרסה 1.0.0-alpha14 מכילה את ההצהרות האלה.

תכונות חדשות

  • נוספה הטמעה של רשימת M3. אפשר לעיין במסמכים כדי לראות דוגמה לשימוש (Id7a20)

שינויים ב-API

  • שינוי שם הפרמטר מ-values ל-value בקובץ RangeSlider (I3b79a)
  • שינויים ב-API להטמעת InputChip כדי לתמוך במצב שניתן לבחור בהתאם למפרט של Material Design. תמיכה נוספת בצבעים של FilterChip למצב מושבת שנבחר. (I55244, ‏ b/235792432)
  • הוספת FAB BottomAppBar שמוגדר כברירת מחדל (Ida4c8)
  • הכרטיס ColorScheme.surfaceColorAtElevation נוסף (Id41af)
  • ממשקים בספריות compose נוצרים עכשיו באמצעות שיטות ברירת המחדל של ממשק jdk8‏ (I5bcf1)
  • עכשיו אפשר להשתמש ב-Comparable עם WindowWidthSizeClass ו-WindowHeightSizeClass, כך שאפשר להשוות ביניהם באמצעות אופרטורים (<, <=, >=, >) וממשקי API אחרים. (I747d0)

תיקוני באגים

  • מעדכנים את דוגמת התג כדי לספק תיאור תוכן משמעותי יותר. (I10b9d)
  • נוספה אפשרות להשתמש בגודל הגופן של המערכת לכלי לבחירת עיצוב בקטלוג של Material 3. (I10605)
  • הוספת קוד לדוגמה לתגים ולמדדי התקדמות לא ידועים. (I8fbe0)

גרסה 1.0.0-alpha13

1 ביוני 2022

androidx.compose.material3:material3:1.0.0-alpha13 ו-androidx.compose.material3:material3-window-size-class:1.0.0-alpha13 משוחררים. גרסה 1.0.0-alpha13 מכילה את ההצהרות האלה.

שינויים ב-API

  • תמיכה בשמירה על המיקום של שורת האפליקציות העליונה כשמשנים את ההגדרות. (I10459, ‏ b/216160958)

גרסה 1.0.0-alpha12

18 במאי 2022

androidx.compose.material3:material3:1.0.0-alpha12 ו-androidx.compose.material3:material3-window-size-class:1.0.0-alpha12 משוחררים. גרסה 1.0.0-alpha12 מכילה את ההוספות האלה.

תיקוני באגים

  • עכשיו אפשר להגדיר רוחב 0 לרכיב האב של פס ההזזה. (b/231707291)

גרסה 1.0.0-alpha11

11 במאי 2022

androidx.compose.material3:material3:1.0.0-alpha11 ו-androidx.compose.material3:material3-window-size-class:1.0.0-alpha11 משוחררים. גרסה 1.0.0-alpha11 מכילה את ההצהרות האלה.

תכונות חדשות

  • הוספת RangeSlider לחומר 3 (I18e38)
  • נוספה תמיכה ב-Material3 AssistChip ו-InputChip (I0d25a)
  • הוספת תמיכה ב-Material3 FilterChip ו-SuggestionChip (I9fdf3)

שינויים ב-API

  • השם של ה-composable TextFieldDefaults.BorderStroke שמשמש לציור קו גבול ב-OutlinedTextField השתנה ל-TextFieldDefaults.BorderBox. (I5f295)
  • שינויים חזותיים ב-Switch m3 (Iab30e)
  • העברת צבעים ללחצני הסמלים הרגילים. (Ia2445)

תיקוני באגים

  • הוספת בדיקת איתור שגיאות בקוד ל-material3/Scaffold כדי לוודא שנעשה שימוש במדף הפנימי (I72293, ‏ b/226951418)

גרסה 1.0.0-alpha10

20 באפריל 2022

androidx.compose.material3:material3:1.0.0-alpha10 ו-androidx.compose.material3:material3-window-size-class:1.0.0-alpha10 משוחררים. גרסה 1.0.0-alpha10 מכילה את ההצהרות האלה.

תכונות חדשות

  • material3-window-size-class היא ספרייה חדשה שמספקת תמיכה בקטגוריות של גודל חלון: קבוצה של נקודות עצירה של אזור תצוגה, שמאפשרות לכם לעצב, לפתח ולבדוק פריסות של אפליקציות שניתן לשנות את הגודל שלהן. אפשר להשתמש ב-calculateWindowSizeClass כדי לאחזר מופע של סיווג גודל חלון, שבעזרתו אפשר לקבוע איך ממשק המשתמש ייראה. לדוגמה, אפשר להציג מסילה ניווט במקום ניווט בתחתית המסך בחלונות גדולים יותר. מידע נוסף ודוגמה לשימוש מופיעים במסמכי העזרה של ה-API של WindowSizeClass. מידע נוסף על הגדרות של סיווג חלונות מפורט בהנחיות הציבוריות בנושא תמיכה בגודלי מסך שונים.

שינויים ב-API

  • הוספת גובה ברירת מחדל ל-FAB עבור BottomAppBar, הסרת lambda נגרר מ-BottomAppBar באמצעות FAB. (I92c47)
  • הוספת Material3 FilledIconButton,‏ FilledTonalIconButton ו-OutlinedIconButton. (Ib2bda)
  • עדכון של Material 3 Snackbar API כדי לאפשר קבלת ערכי צבע לפעולה האופציונלית ולפעולת הסגירה. (Ibe4b4)
  • האפשרות 'צריכה חלקית (מצב מושבת או מיקום)' הוצאה משימוש ב-PointerInputChange. אפשר להשתמש ב-consume() כדי לצרוך את השינוי באופן מלא. אפשר להשתמש ב-isConsumed כדי לקבוע אם מישהו אחר כבר נצל את השינוי.
  • PointerInputChange::copy() יוצרת עכשיו תמיד עותק שטחי. המשמעות היא שעותקים של PointerInputChange ייצרכו ברגע שאחד מהעותקים ינוצל. אם רוצים ליצור PointerInputChange ללא קישור, משתמשים במקום זאת ב-constructor. (Ie6be4, ‏ b/225669674)
  • שינויים ב-Cards API כדי לקבל את הצבעים של המארז והתוכן דרך ממשק CardColors, ותמיכה בסטטוס מושבת לכרטיסים שניתן ללחוץ עליהם. (I927df)
  • השם של הפרמטר backgroundColor השתנה ל-containerColor בשדות הטקסט של Material 3, כדי לשפר את העקביות עם רכיבים אחרים. (I6fbd9)

תיקוני באגים

  • עדכונים בסטנדרט IconButton כדי להתאים אותו למפרט של Material3.‏ (I09eab)
  • מעבירים את גובה הסרגל העליון של material3 Scaffold למרווח שמוענק לתוכן, כדי לאפשר לתוכן להירטן מתחת לסרגל האפליקציות העליון. אם התווים PaddingValues יימחקו, ייתכן שהתוכן יוסתר על ידי המסילה העליונה. (I83cbc, ‏ b/217776202)

גרסה 1.0.0-alpha09

6 באפריל 2022

androidx.compose.material3:material3:1.0.0-alpha09 משוחרר. גרסה 1.0.0-alpha09 מכילה את ההוספות האלה.

תכונות חדשות

  • נוספה Material 3 Switch API‏ (I2c3ad)

שינויים ב-API

  • נוספה תמיכה בתפריטים נפתחים עם שדות טקסט (נקראים גם 'תפריטים נפתחים חשופים' או 'תיבות משולבות'). (I1b832)
  • נוספה פרמטר צורה ל-MaterialTheme ולתת-מערכת Shape. (I37426)
  • הוספנו פרמטר מורחב ל-ExtendedFloatingActionButton כדי לקבוע אם הלחצן המהיר מורחב או מכווץ, עם אנימציות בין כל מצב. הוספנו עומס יתר של FAB מורחב ל-FAB מורחב עם טקסט נלווה ל-FAB מורחב ללא סמל. (Iba7f1)

גרסה 1.0.0-alpha08

23 במרץ 2022

androidx.compose.material3:material3:1.0.0-alpha08 משוחרר. גרסה 1.0.0-alpha08 מכילה את ההצהרות האלה.

תכונות חדשות

  • הוספנו תמיכה בשדות טקסט של Material 3. (I795cc, ‏ b/199377790)

שינויים ב-API

  • הוספת מפריד ברירת מחדל לתפריט (I01374)
  • הוספת פרמטר הצבע surfaceTint לכיתה ColorScheme. (I2f558)

תיקוני באגים

  • תיקון בלחצן Material3 כדי לקרוא את ערך ברירת המחדל של סגנון הטקסט מ-MaterialTheme. (Ie62fc)

גרסה 1.0.0-alpha07

9 במרץ 2022

androidx.compose.material3:material3:1.0.0-alpha07 משוחרר. גרסה 1.0.0-alpha07 מכילה את ההצהרות האלה על ביצוע שינויים (commits).

שינויים ב-API

  • עדכונים לממשק Material 3 Surface API, שכוללים החזרה של הפונקציות עם עומס יתר (overload) למשטחים שניתן ללחוץ עליהם, וכן הוספה של פונקציה לתמיכה במשטחים שניתן לבחור ולעבור ביניהם. (I4bf18)
  • LazyVerticalGrid וגם LazyHorizontalGrid יציבות עכשיו. (I307c0)
  • LazyVerticalGrid/LazyHorizontalGrid וכל ממשקי ה-API הקשורים הועברו לחבילת המשנה ‎ .grid. צריך לעדכן את הייבוא מ-androidx.compose.foundation.lazy ל-androidx.compose.foundation.lazy.grid. (I2d446)
  • הוחזר השינוי הקודם של שימוש רק בתצוגה עבור WindowInsetsControllerCompat, ועכשיו נדרש שוב חלון, שנחוץ לניהול של דגלים מסוימים של חלונות. הוחלפה ViewCompat.getWindowInsetsController ב-WindowCompat.getInsetsController כדי לוודא שנעשה שימוש בחלון הנכון (למשל, אם התצוגה נמצאת בתיבת דו-שיח). (I660ae, b/219572936)
  • הוספנו ממשק API חדש של LazyVerticalGrid כדי להגדיר גדלים של צירים חופפים (I17723)

תיקוני באגים

  • עדכונים ב-Card API בהתאם לשינויים ב-Surface API (I3c8b9)

גרסה 1.0.0-alpha06

23 בפברואר 2022

androidx.compose.material3:material3:1.0.0-alpha06 משוחרר. גרסה 1.0.0-alpha06 מכילה את ההוספות האלה.

שינויים ב-API

  • NavigationDrawerItem מתווסף, שמייצג יעד יחיד בתוך התיבות (Ic396f,‏ b/218286829)
  • PermanentNavigationDrawer ו-DismissibleNavigationDrawer נוספו כ-API ניסיוניים. אלה התיבות שמתאימות למכשירים עם מסך גדול. (I5f8ab, ‏ b/218286829)
  • נוספה תמיכה בסרגל האפליקציה התחתון של Material 3 (Ic432a)
  • השם של NavigationDrawer שונה ל-ModalNavigationDrawer (I1807d, ‏ b/218286829)
  • נוספו אסימונים וסוג פס ההזזה של Material 3 (I1ccee)
  • נוספה הטמעה של Tab. אפשר לעיין במסמכי העזרה כדי לקבל דוגמה לשימוש (Ie0146)

תיקוני באגים

  • תוקנה בעיה שבה ניווט לינאריים של קורא המסך TalkBack בחר כותרת ריקה בסרגל האפליקציות העליון. (Id4690)
  • IconSize נוסף לקבוצה FloatingActionButtonDefaults. (Ia71cf)
  • תיקון באג של לחצני AlertDialog מוסתרים כשמוסיפים טקסט ארוך באמצעות LazyColumn. (Ib2cc9, ‏ b/216663029)

גרסה 1.0.0-alpha05

9 בפברואר 2022

androidx.compose.material3:material3:1.0.0-alpha05 משוחרר. גרסה 1.0.0-alpha05 מכילה את ההוספות האלה.

תכונות חדשות

נוספו רכיבים של Material Design 3

שינויים ב-API

  • פונקציית Surface שהוצאה משימוש, שמקבלת פונקציית קריאה חוזרת (callback) של onClick. צריך ליצור משטחים שניתן ללחוץ עליהם באמצעות InteractionSource ו-Modifier.clickable(). (I211c6)
  • הוספנו תמיכה בהגבהה של לחיצה ומיקוד ב-FAB. (Ibb584)
  • שינינו את ממשק ה-API של Surface כך שיקבל את הפרמטר InteractionSource, שמאפשר לשלוט במראה שלו במצבים שונים. (Iafbc8)

תיקוני באגים

  • נוספו צבעים שלישיים חסרים בערכות צבעים דינמיות (I456c4, ‏ b/214588434)

גרסה 1.0.0-alpha04

26 בינואר 2022

androidx.compose.material3:material3:1.0.0-alpha04 משוחרר. גרסה 1.0.0-alpha04 מכילה את ההצהרות האלה על ביצוע שינויים (commits).

שינויים ב-API

  • הוספנו את NonRestartableComposable לשיטות שהן עומס יתר של שיטות קיימות ללא לוגיקה מורכבת. כך מפחיתים את מספר הבדיקות לזיכרון (equals) שנוצרות על ידי המהדר עבור כל הפרמטרים שחוזרים על עצמם בפונקציה הפנימית שנקראת. (I90490)
  • נוספה תפריד של Material 3. (Ica5fc)
  • מסמנים את תיבת הסימון ואת לחצן הבחירה באמצעות הערה ל-API ניסיוני. (Ie44bb)
  • הוספנו תמיכה באינדיקטורים של התקדמות ב-Material 3. (Iff232, ‏ b/205023841)

תיקוני באגים

  • עדכון הצבע של מאגר TextButton's מושבת לשקוף (I6b248, ‏ b/213339737)

גרסה 1.0.0-alpha03

12 בינואר 2022

androidx.compose.material3:material3:1.0.0-alpha03 משוחרר. גרסה 1.0.0-alpha03 כוללת את ההצהרות האלה.

תיקוני באגים

  • מוסיפים את LocalIndication ל-MaterialTheme של חומר 3. (I7ce4e)
  • תיקון רדיוס הפינה שחלה על תיבות סימון (I38b03, ‏ b/175198975, ‏ b/202309440)

עדכוני יחסי תלות

  • עכשיו תלוי ב-Kotlin 1.6.10.

גרסה 1.0.0-alpha02

1 בדצמבר 2021

androidx.compose.material3:material3:1.0.0-alpha02 משוחרר. גרסה 1.0.0-alpha02 מכילה את ההצהרות האלה.

תכונות חדשות

  • הוספת תמיכה בתיבת סימון ובלחצן בחירה.
  • עודכן כך שיהיה תואם ל-Kotlin 1.6.0

שינויים ב-API

  • מסירים את המגירה מהתומך של Material 3. (I04f51)
  • הוספת תמיכה ב-Checkbox של חומר 3. (Id5542)
  • הוספת תמיכה ב-RadioButton של חומר 3. (I20334)

תיקוני באגים

  • מקטינים את רדיוס הרטט IconButton מ-40dp ל-20dp. (I68bbe, ‏ b/206674345)
  • נתיב מהיר של מחרוזת יציאה עבור Text משתנה מ-compose.material (I30b03)
  • תוקנה, אבל הלחצן הזה מוגדר תמיד כמופעל. (Iea832, ‏ b/205335456)

גרסה 1.0.0-alpha01

27 באוקטובר 2021

androidx.compose.material3:material3:1.0.0-alpha01 משוחרר. גרסה 1.0.0-alpha01 מכילה את ההצהרות האלה.

תכונות חדשות

עיצוב לפי נושא של Material Design 3 וצבע דינמי של Material You

רכיבים של Material Design 3

מידע נוסף זמין בקטע Material Design 3 ו-Material You במדריך לשימוש בנושאי עיצוב של Material ב-Compose.