Wear Compose
העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסה אלפא |
---|---|---|---|---|
4 ביוני 2025 | 1.4.1 | - | 1.5.0-beta03 | - |
הצהרת יחסי תלות
כדי להוסיף תלות ב-Wear, צריך להוסיף את מאגר Google Maven לפרויקט. למידע נוסף, אפשר לקרוא את המאמר מאגר Maven של Google.
מוסיפים את יחסי התלות של הארטיפקטים הנדרשים בקובץ build.gradle
של האפליקציה או המודול:
מגניב
dependencies { implementation "androidx.wear.compose:compose-foundation:1.4.1" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material:1.4.1" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.4.1" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.4.1") // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material. // androidx.wear.compose:compose-material is designed as a replacement // not an addition to androidx.compose.material:material. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material please raise a bug to let us know. }
Kotlin
dependencies { implementation("androidx.wear.compose:compose-foundation:1.4.1") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material:1.4.1") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.4.1") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.4.1") // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material. // androidx.wear.compose:compose-material is designed as a replacement // not an addition to androidx.compose.material:material. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material please raise a bug to let us know. }
מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ל-build.
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. אם נתקלתם בבעיות חדשות או שיש לכם רעיונות לשיפור הספרייה הזו, נשמח לשמוע מכם. לפני שיוצרים בעיה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להצביע על בעיה קיימת, לוחצים על לחצן הכוכב.
מידע נוסף זמין במסמכי התיעוד של Issue Tracker.
Wear Compose גרסה 1.5
גרסה 1.5.0-beta03
4 ביוני 2025
androidx.wear.compose:compose-*:1.5.0-beta03
משוחרר. גרסת 1.5.0-beta03 מכילה את ההוספות האלה.
שינויים ב-API
OpenOnPhoneDialog
מכריז עכשיו רק על טקסט ההודעה ב-TalkBack, ודלג על הסמנטיקה של הסמל. ה-OpenOnPhoneDialogDefaults
עודכנו כדי להסיר את הפרמטרiconContentDescription
ואת הפרמטרcontentDescription
מ-icon()
. בנוסף, עכשיו יש ל-ConfirmationDialogDefaults
פרמטרים של מודификаторים ברכיבים הניתנים לשילוב שלSuccessIcon
ו-FailureIcon
. (Id2ae2)
תיקוני באגים
- שינינו את הסדר שבו אנחנו מחילים את ההשפעה של הפרמטרים
SurfaceTransformation
. בעבר, הטרנספורמציות שהוחלו על רכיבי Wear Material3 בוצעו באופן הבא: ציור רקע, טרנספורמציה של קונטיינר, טרנספורמציה של תוכן. עכשיו, 2 הפריטים הראשונים הופכים, ואנחנו מחילים כל שינוי שעבר ביניהם, כך שהוא מושפע מהטרנספורמציות של הקונטיינר. כך ניתן לפתור בעיות כמו שימוש באפקט שיזוף של placeholder עם רכיבים ב-TLC באמצעות פרמטר הטרנספורמציה. (I786cf) - השדה
RevealState.Saver
נוסף כדי לשמש לשחזור המצב שלSwipeToReveal
כשיוצרים מחדש את הפעילות או התהליך. הפונקציהrememberRevealState
משתמשת עכשיו ב-Saver הזה כברירת מחדל. (Ie0ecb) SwipeToReveal
לחצני הפעולות הראשיות והמשניות צריכים להיות מוגדרים כברירת מחדל כ-ButtonDefault.Height
(תוקן באג שבו הם מילאו את הגובה המקסימלי של לחצנים גבוהים יותר). (Ibfba1)- שינינו את
SwipeToReveal
כדי לאפס את הרכיב האחרון שבו בוצעה אינטראקציה, כשמבצעים את התנועה של החלקה ימינה. (Ia8450) SwipeToReveal
השתנה כך שיגיע למצבRevealing
כשמיקום הסיום של החליקת האצבע נמצא בין שתי נקודות העיגון – נקודת העיגון של החשיפה ונקודת העיגון של החשיפה – והוא קרוב יותר לנקודת העיגון של החשיפה. (If4458)- עכשיו התוכן של
ButtonGroup
הופך כמו שצריך בפריסה לימין (Ib378d) AnimatedText
תומך עכשיו בכיוון טקסט מימין לשמאל (I4533c)TransformingLazyColumn
עכשיו משתנה הגודל של הפריטים בצורה נכונה כשהפריט התחתון מוסר (Idacab)TransformingLazyColumn
מבצע עכשיו רק סבב מדידה אחד, וכך משפר את הביצועים על ידי צמצום זמני הפריימים. (I501a1)
גרסה 1.5.0-beta02
20 במאי 2025
androidx.wear.compose:compose-*:1.5.0-beta02
משוחרר. גרסת 1.5.0-beta02 כוללת את ההוספות האלה.
תיקוני באגים
- עדכנו את הפרופילים הבסיסיים של ספריות foundation, material ו-material3. (I53f06)
- תוקן באג ב-
TransformingLazyColumn
, שבו הגודל של הפריטים השתנה כשהפריט התחתון הוסר. (Idacab) - תוקן באג ב-
TransformingLazyColumn
, שבו הרשימה נתקעה בחלק העליון או התחתון שלה. (I49d00) OpenOnPhoneDialog
בקטע TalkBack צריך להקריא את הטקסט המעוקל, ולא את תיאור התוכן של הסמל. (I4efe8)- תוקן באג ב-
SwipeToReveal
שגרם לדיווח על עוגן שגוי ב-RevealState.currentValue
כשהערך שלhasPartiallyRevealedState
מוגדר כ-false. (I9c7cf) - כפתורי הביטול
SwipeToReveal
מוגדרים עכשיו כ-ButtonDefaults.Height
כברירת מחדל. (I1f6c8) - שיפור הביצועים של
BasicSwipeToDismissBox
על ידי הפסקת השימוש ב-Canvas לציור פריימים מקדימים. (I68f2c) - תוקן באג נגישות ב-Slider, שבו האחוז המוצג לא תאם לערך אחרי העדכונים (I91146)
- תוקן באג בהטמעה של
placeholderShimmer
. (Iee39b - הביצועים של
TransformingLazyColumn
השתפרו, בעקבות אופטימיזציה של החישוב שלScrollProgress
בשיעור של 30%. (I4c4cb)
גרסה 1.5.0-beta01
7 במאי 2025
androidx.wear.compose:compose-*:1.5.0-beta01
משוחרר. גרסת 1.5.0-beta01 מכילה את ההוספות האלה.
הגרסה 1.5.0-beta01 של Compose for Wear OS מציינת שהגרסה הזו של הספרייה כוללת את כל התכונות וממשק ה-API נעול (למעט במקרים שבהם הוא מסומן כניסיוני).
Wear Compose 1.5.0-beta01 כולל את הספרייה Wear Compose Material3, שתומכת במערכת החדשה לעיצוב ממשק המשתמש שנקראת Material 3 Expressive. מומלץ לשדרג מ-Material ל-Material3 כדי ליהנות מהעיצוב החזותי החדש באפליקציות ומהרכיבים החדשים הבאים:
MaterialTheme
כדי לקבל ערכות צבעים, גופנים וצורות מעודכנים ומרחיבים, שיעניקו לעיצובים שלכם עומק ומגוון.- ערכות צבעים דינמיות, שמאפשרות ליצור באופן אוטומטי ערכת צבעים לאפליקציה כך שתתאים לצבעים של תצוגת השעון.
- רכיבים חדשים מותאמים באופן אוטומטי למסכים גדולים יותר כברירת מחדל
- שינוי צורה – רכיבים של לחצנים עגולים כמו
IconButton
, TextButton
, IconToggleButton
ו-TextToggleButton
תומכים באפשרויות שונות עם אנימציה כשהם לוחצים עליהם או מסמנים אותם. EdgeButton
– כפתור חדש לאורך הקצה עם צורה מיוחדת שמיועד לתחתית המסך.- תבניות – הצגת
AppScaffold
ו-ScreenScaffold
כדי לתכנן את המבנה של המסך ולתאם את האנימציות שלScrollIndicator
ו-TimeText
. - לחצנים – יש תמיכה במגוון לחצנים בצורת אצטדיון עם קונטיינרים גמישים עם חריץ יחיד, ועם וריאציות של קונטיינרים עם כמה חריצים ללחצנים עם סמלים ותוויות.
CheckboxButton
ו-SwitchButton
מוצגים כשצריך לחצני החלפת מצב, ו-RadioButton
הוא לחצן הבחירה הזמין (יש גם וריאציות 'מפוצלות' של לחצני החלפת המצב ושל לחצן הבחירה). ButtonGroup
– הטמעת קבוצה של כפתורים בעלי מראה מיוחד בשורה, שמשתנים כשמקישים עליהם.- וריאציות של
AlertDialog
תומכות בלחצני אישור/ביטול או ב-EdgeButton
. ConfirmationDialog
זמין להצגת הודעה עם זמן קצוב לתפוגה, עם תמיכה באנימציות מיוחדות למקרים של הצלחה, כשל וריאציות של פתיחה בטלפון.- בוררי בחירת פריטים – יש תמיכה בגרסאות של
TimePicker
ו-DatePicker
, וגם ברכיבים Picker ו-PickerGroup
ליצירת מסכי בורר בחירת פריטים משלכם. ProgressIndicators
– יש תמיכה באינדיקטורים של התקדמות מעגליים ולינאריים (ל-CircularProgressIndicator
יש וריאציות מחולקות ווריאציות לא ידועות).- כרטיסים – יש כמה וריאציות של כרטיסים, כולל
TitleCard
שמציע פריסות ספציפיות לכרטיסים עם כותרת, שעה, כתוביות או שטחי תוכן. אפשר גם להוסיף ל-TitleCard
רקע של תמונה כדי לחזק את המשמעות של המידע בכרטיס. - רכיבי Pager – הרכיבים
HorizontalPagerScaffold
, VerticalPagerScaffold
ו-AnimatedPage
מנהלים את התזמון של האנימציותHorizontalPageIndicator
ו-VerticalPagerIndicator
.HorizontalPager
ו-VerticalPager
פורסמו בספרייה של Wear Compose Foundation. - placeholders (סמלי placeholder) – ציור של צורת שלד מעל רכיב, למקרים שבהם אין תוכן זמני זמין.
- מחוונים ופקדי צעד – גם מחוונים וגם פקדי צעד מאפשרים למשתמשים לבחור מתוך טווח ערכים. פס ההזזה קומפקטי יותר וניתן לחלק אותו למקטעים, בעוד שפס ההתקדמות הוא רכיב במסך מלא שמשויך בדרך כלל ל-
StepperLevelIndicator
. SwipeToReveal
– משמש להוספת פעולות נוספות ל-Composeable כשמחליקים מימין לשמאל.
בנוסף, Wear Compose Foundation 1.5.0-beta01 כולל את הרכיבים החדשים הבאים:
TransformingLazyColumn
– רשימה עם גלילה אנכית עצלה שתומכת בהתאמה לעומס ובאנימציות של טרנספורמציה- קבוצות פוקוס היררכיות – משמשות להוספת הערות לרכיבים שניתנים לשילוב באפליקציה, כדי לעקוב אחרי החלק הפעיל של ההרכבה ולתאם את המיקוד.
- Pagers – רכיבים של
HorizontalPager
ו-VerticalPager
, שנוצרו על סמך הרכיבים של Compose Foundation עם שיפורים ספציפיים ל-Wear כדי לשפר את הביצועים ולפעול בהתאם להנחיות של Wear OS.
שינויים ב-API
- עדכנו את Hierarchical Focus API – שינינו את השם של
Modifier.hierarchicalFocus
ל-Modifier.hierarchicalFocusGroup
והסרנו את הפרמטר של הקריאה החוזרת (callback). הסרתם את עומס יתר שלModifier.hierarchicalFocusRequester
באמצעות פרמטרFocusRequester
. יצרנוCompositionLocal
חדש,LocalScreenIsActive
, כדי שרכיבים יוכלו לדווח ולבדוק איזה מסך פעיל. (I5ff7c). - הוצאנו משימוש את
SwipeToReveal
מ-Wear Compose Foundation והחלפנו אותו בממשקי API שלSwipeToReveal
ב-Wear Compose Material וב-Wear Compose Material3. כדי להמשיך להשתמש בממשקי ה-API, צריך להחליף את הייבוא שלSwipeToReveal
ב-Wear Foundation בייבוא של Wear Compose Material או Wear Compose Material3. (Ia147d). - יחסי התלות של
SwipeToReveal
ב-Foundation ב-Wear Compose Material3 הועברו לחבילת material3, למשלRevealValue
, RevealDirection
, RevealActionType
, RevealState
, rememberRevealState
. המפתחים צריכים לשנות את הייבוא של הכיתות והפונקציות האלה מ-androidx.wear.compose.foundation
ל-androidx.wear.compose.material3
. (I640e6). - עדכנו את ממשק ה-API
SwipeToReveal
של Wear Compose Material3 באופן הבא: הוספנו את הפרמטריםprimaryAction
,onFullSwipe
,secondaryAction
,undoPrimaryAction
,undoSecondaryAction
ו-hasPartiallyRevealedState
ל-composableSwipeToReveal
. הסרנו את היכולת להתאים אישית אתpositionalThreshold
ו-animationSpec
מ-RevealState
. הסרנו אתlastActionType
,revealThreshold
והרוחב מ-RevealState
. שינינו את המבנה שלRevealState
כך שיקבלRevealDirection
במקום עוגנים. הסרנו אתcreateRevealAnchors
, את העוגנים ואת הפונקציותbidirectionalAnchors
. הפונקציותSwipeToRevealScope
primaryAction
,secondaryAction
,undoPrimaryAction
ו-undoSecondaryAction
שונו לשמותPrimaryActionButton
,SecondaryActionButton
,UndoActionButton
והפכו לפונקציות Composable. סימנו אתRevealActionType
כפנימית. (I885d0). - עדכנו את ה-API של
SwipeToReveal
באופן הבא: שינינו את השם שלonFullSwipe
ל-onSwipePrimaryAction
, שינינו את השם שלSwipeToRevealNonAnchoredSample
כדי לציין את השימוש בפרמטרhasPartiallyRevealedState
, הסרנו אתactionButtonHeight
כי ברירת המחדל היא הגובה שמוגדר כברירת מחדל ל-Button, וניתן להגדיר גובה גדול יותר באמצעות שינוי (modifier). הסרנו אתSmallActionButtonHeight
מ-SwipeToRevealDefaults
, והפכנו את פרמטר הערך ב-RevealValue
וב-RevealDirection
למשתנה פרטי (private) ב-constructors. (I465ce).
תיקוני באגים
- תוקנה הטיפול ב-
EdgeButton
שלScreenScaffold
, כך שאחרי הסרת פריטTransformingLazyColumn
, ה-EdgeButton
נע באנימציה למיקום שלו. (I6d366). - עדכנו את יחסי התלות של Wear Compose בספריות Compose לגרסה 1.8.0. (I2ef3f).
- עדכנו את התנועה של
CircularProgressIndicator
הלא ידועה כך שהיא לא תהיה יותר רגרסיה זמנית. (Ieddb1). - תוקן באג ב-
SwipeDismissableNavHost
– המיקוד לא השתנה בצורה נכונה אחרי החלקה לאחור, מה שגרם לכשל בהזנת נתונים באמצעות רוטור (הבעיה הזו הייתה ב-API מגרסה 36 ואילך, שמשתמשת בחזרה חזויית). (Ieddb1). - תיעוד מתוקן של Hierarchical Focus API (Idf2ff).
- עדכנו את המסמכים של Button ו-Card כדי לציין איך
containerPainter
ו-disabledContainerPainter
מבטלים את ההגדרות שלcontainerColor
ו-disabledContainerColor
(I4a453). - החזרה לשינוי הקודם ב-
TimeText
בגרסה הקודמת, שהעביר אתBroadcastReceiver
לשרשור עבודה, כי הוא גרם לבעיות באפליקציות שמנהלות את השרשור שלהן בזמן הניווט. (I34d02). - עדכנו את הדוגמאות ל-Picker כדי להסיר קריאות מיותרות ל-remember, ובמקום זאת להשתמש ב-
rememberUpdatedState
ב-Picker כדי לזכור את פונקציית הלמבדה האחרונה שלcontentDescription
. (Icb5b1). - עדכנו את סגנונות הטקסט ב-
TimePicker
וב-DatePicker
, כך ששינויים בגופן לא יגרמו יותר לקיצוץ. (I26194). - עכשיו ברירת המחדל של
ListHeader
ו-ListSubHeader
היא יישור טקסט למרכז ולהתחלה, בהתאמה. (I78339). - עדכנו את הדוגמאות והדמואים של Foundation ו-Material לגבי החלקה כדי לחשוף, כדי להודיע על פעולות מותאמות אישית של נגישות (צריך להוסיף את הפעולות בהתאמה אישית כסמנטיקה בתוכן, ולא ברכיב ה-
SwipeToReveal
עצמו). (Ie92a3). - עדכנו את ברירת המחדל של
MaxLines
שמוגדרת בתוכןEdgeButton
בהתאם לגודל שלו – עכשיו הערך הוא 1 לתוכן בגודל 'קטן במיוחד', 2 לתוכן בגודל 'קטן' ו'בינוני' ו-3 לתוכן בגודל 'גדול'. (Ie35f6). LocalReduceMotion
פשוט יותר, כך שהמשתמש המתבונן נרשם רק פעם אחת, כדי לשפר את הביצועים. (Ib1979).- צמצמנו את מספר הציורים מחדש ב-
ScrollIndicator
כדי לשפר את הביצועים. (Ia7a67). - תוקן באג ב-
TransformingLazyColumn
, שבו הפריט העליון שגלוי ברשימה לא השתנה כראוי כש-EdgeButton הגיע לגובה המלא שלו. (I30580).
גרסה 1.5.0-alpha14
23 באפריל 2025
androidx.wear.compose:compose-*:1.5.0-alpha14
משוחרר. גרסת 1.5.0-alpha14 מכילה את ההוספות האלה.
שינויים ב-API
- כל יחסי התלות של Material
SwipeToReveal
ב-FoundationSwipeToReveal
הועברו לחבילת Material, למשלRevealValue
, RevealDirection
, RevealActionType
, RevealState
, rememberRevealState
. המפתחים צריכים לשנות את הייבוא של הכיתות והפונקציות האלה מ-androidx.wear.compose.foundation
ל-androidx.wear.compose.material
. (Ib7cb8) - עדכנו את ה-API של
HierarchicalFocusCoordinator
כך שיהיה מורכב ממשתנים במקום מרכיבים שניתנים לשילוב. - הערות לגבי ההעברה:
- אפשר להחליף את
HierarchicalFocusCoordinator(function, content)
על ידי הוספתModifier.hierarchicalFocus(function())
ל-content
או ל-composable המקיף. - אפשר להחליף את
ActiveFocusListener { if (it) focusRequester.requestFocus() }
על ידי הוספתModifier.hierarchicalFocusRequester(focusRequester)
- בשימושים אחרים, נדירים יותר, של
ActiveFocusListener
אפשר להשתמש בפרמטר החדש ב-Modifier.hierarchicalFocus
- אפשר להחליף את
focusRequester(rememberActiveFocusRequester())
ב-hierarchicalFocusRequester()
- אפשר להחליף את
val focusRequester = rememberActiveFocusRequester()
ב-remember { FocusRequester() }
ולהוסיף אתModifier.hierarchicalFocusRequester(focusRequester)
. (Ie319a)
- אפשר להחליף את
תיקוני באגים
- ערך הסף של המהירות שתנועות החלקה צריכות לעבור כדי להפעיל שינוי מצב הוגדל ברכיבים הבאים:
SwipeToReveal
, BasicSwipeToDismissBox
ו-SwipeDismissableNavHost
(רק ב-API 35 וגרסאות ישנות יותר עבורSwipeDismissableNavHost
). (If47bf) - תוקנה בעיה באנימציה כשמוסיפים פריטים חדשים ל-
TransformingLazyColumn
. (I589b2)
גרסה 1.5.0-alpha13
9 באפריל 2025
androidx.wear.compose:compose-*:1.5.0-alpha13
משוחרר. גרסת 1.5.0-alpha13 מכילה את ההוספות האלה.
שינויים ב-API
- כדי לצרוך פרויקטים שפורסמו עם Kotlin 2.0, צריך להשתמש ב-KGP 2.0.0 ואילך (Idb6b5)
- הנכס
targetPage
נוסף אלPagerState
(I4de8b)
תיקוני באגים
- למנוע יצירת קומפוזיציה מחדש מיותרת במהלך חזרה חזותית אוטומטית. (Iecd6d)
- תוקן המאפיין
isScrollable
שלScrollInfoProvider
כך שיחזיר את הערך הנוכחי. (Icbfb8)
גרסה 1.5.0-alpha12
26 במרץ 2025
androidx.wear.compose:compose-*:1.5.0-alpha12
משוחרר. גרסת 1.5.0-alpha12 מכילה את ההוספות האלה.
שינויים ב-API
- שיפור ההטמעה שמוגדרת כברירת מחדל של
SwipeToReveal
ב-gestureInclusion
, כך שתתעלם מהתנועות רק אם המצב של הרכיב הוא 'מכוסה'. (I7e3d6) - ב-
SwipeToReveal
, הפכנו אתbidirectionalGestureInclusion
ל-val במקום לפונקציה והוספנו את@FloatRange
לפרמטרedgeZoneFraction
ב-gestureInclusion
. (Ica7c3)
תיקוני באגים
- משנים את
SwipeToReveal
bidirectionalGestureInclusion
כדי להחזיר אובייקט במקום סוג. (I29597) - השבתת השימוש בהפעלה מישושית בזמן הרצת בדיקות ב-
RoboElectric
. (I58bd1) - מעדכנים את המרווחים הפנימיים
SwipeToReveal
בין התוכן לבין לחצני הפעולה, וגם את המרווחים הפנימיים בין הסמל לטקסט של לחצני הפעולה. (Ic46cb)
גרסה 1.5.0-alpha11
12 במרץ 2025
androidx.wear.compose:compose-*:1.5.0-alpha11
משוחרר. גרסת 1.5.0-alpha11 כוללת את ההוספות האלה.
שינויים ב-API
- עודכן
PagerState
, והוסרו ממנוPagerState
של Compose Foundation ככיתה הבסיסית, והתווספו המאפייניםcurrentPage
,currentPageOffsetFraction
ו-pageCount
. עדכנו את הממשק שלGestureInclusion
ושינו את שם השיטה ל-ignoreGestureStart
. (I4ae07) - מומלץ להוסיף את
requireOffset
ל-SwipeToDismissBoxState
כדי לקבל את הזיכוי בסךSwipeToDismissBoxState
. (I21042) - נוספה
CurvedModifier.semantics
, שתומכת בהתחלה בתיאור תוכן ובאינדקס סריקה (I0b093) - הוספנו את
CurvedModifier.clearAndSetSemantics
כדי לספק דרך להשבית את הסמנטיקה המעוקלת.CurvedText
ממשיך להגדיר כברירת מחדל את תיאור התוכן כטקסט, אבלtimeTextCurvedText
ו-timeTextSeparator
לא מכריזים עכשיו על התוכן שלהם. (I4b568) - שם ברירת המחדל של הטיפול בתנועות החלקה ב-
HorizontalPager
השתנה ל-PagerDefaults.gestureInclusion
. התנהגות ברירת המחדל היא עכשיו להתעלם רק מתנועות החלקה שמתחילות בקצה הימני של הדף הראשון, ורק כש-TalkBack מושבת. במקרים אחרים, התנהגות ברירת המחדל היא שהמעברון לא יתעלם מתנועות החלקה, כך שהן לא יהיו זמינות למטפלים בתנועות החלקה לסגירה. (Iee486) - הוספנו גלילה רציפה בכיוון אופקי ל-
rotaryScrollable
API. הוספנו גלילת-יתר וגלילת עץ להתנהגות ה-fling שלrotaryScrollable
. השינוי הזה אמור לספק פונקציונליות זהה של גלילה מעבר לקצה המסך וגלילה בתצוגה בתצוגה בתצוגה בתצוגה, בין גלילה במגע לבין גלילה באמצעות לחצן הבית. (I71926) - הוספנו תמיכה באזור לסחיטה מהקצה ל-
SwipeToReveal
. ברירת המחדל של FoundationSwipeToReveal
היא עכשיו לא לאפשר החלקה כשהתנועה מתחילה מהקצה. התנהגות ברירת המחדל שלSwipeToReveal
ב-Material3 היא עכשיו לא לאפשר החלקה כשהתנועה מתחילה מהקצה, כשה-SwipeDirection
מוגדר לכיוון יחיד. (I32ef0) - עכשיו, ב-TLC נעשה שימוש ב-contentPadding ריק כברירת מחדל במקום להציב את הפריט הראשון והאחרון במרכז. (I77ab7)
תיקוני באגים
- ספריות Wear Compose עודכנו למהדורת 2.0 של Kotlin. (I2de79)
- תוקנה הדוגמה המעוקלת של
LetterSpacing
ב-Foundation. (Iebf7c)
גרסה 1.5.0-alpha10
26 בפברואר 2025
androidx.wear.compose:compose-*:1.5.0-alpha10
משוחרר. גרסת 1.5.0-alpha10 כוללת את ההוספות האלה.
שינויים ב-API
- הופכים את
SwipeToRevealDefaults
לציבורי. (I0c34c) - החלפנו את הפרמטר
swipeToDismissEdgeZoneFraction
ב-HorizontalPager
. במקום זאת, הוספנו פרמטר חדש,gestureInclusion
, שאפשר להשתמש בו כדי להשיג את ההתנהגות הנדרשת של החלקה כדי לסגור.gestureInclusion
מקבלת מופע שלGestureInclusion
, שמחליט אם אירוע הגלילה הבא צריך להמשיך או לא. אם מאשרים תנועה, ה-Pager צורך אותה – אחרת, היא תטופל במקום אחר, למשל על ידי טיפולן בתנועת החלקה כדי לסגור. התנהגות ברירת המחדל החדשה היא לא לאפשר תנועות בקצה הימני ביותר של הדף הראשון ב-Pager, ולכן לאפשר החלקה כדי לסגור באזור הזה. בכל שאר הדפים, ה-Pager יוכל לזהות את כל התנועות, כלומר לא ניתן יהיה להפעיל את האפשרות 'החלקה כדי לסגור' מהם. כדי ליצור התנהגות של החלקה לסגירה בכל הדפים, פשוט מספקים מופעGestureInclusion
בהתאמה אישית (ראוPagerDefaults.disableLeftEdgeOnFirstPage
) שמתעלם מהדף הנוכחי. שינוי נוסף שחל הוא שרכיב ה-Pager כבר לא מוצג במסך מלא כברירת מחדל. במקום זאת, צריך להוסיף אתModifier.fillMaxSize()
כדי להשיג את ההתנהגות הזו. (I9d3aa) - שינינו את השם של
createAnchors
ל-createRevealAnchors
ב-API של החלקה כדי לחשוף(If5999) - הסרנו את
RevealScope
מ-API ההחלקה לחשיפת תוכן. (Ie4ad5) - הסרנו את Revealing ו-Revealed מ-
RevealValue
ב-API של החלקה כדי לחשוף. (I8dbc5) - שינינו את השם של
SwipeDirection
ל-RevealDirection
בממשק ה-API של החלקה כדי לחשוף. (I7472f) - שינינו את החתימה של הפרמטר
positionalThreshold
בפונקציהrememberRevealState
שלSwipeToReveal
. (I29c0a) - הוספנו פרמטר חדש
overscrollEffect
ל-ScalingLazyColumn
, ל-TransformingLazyColumn
ול-ScreenScaffold
. (I0cee8) - כשמשתמשים ב-
PagerDefaults#snapFlingBehaviour
, הפרמטרpagerSnapDistance
מוחלף בפרמטר IntmaxFlingPages
, שאפשר להשתמש בו כדי לציין את מספר הדפים המקסימלי ש-Pager צריך להציג. (I8cfc0) - ל-Wear Pager יש עכשיו
PagerScope
משלו במקום להשתמש ב-Compose FoundationPagerScope
. (I9195b) - הוספנו תמיכה ב-
lineHeight
בטקסט מעוקל (I1c936) - הוספנו את
initialAnchorItemIndex
ו-initialAnchorItemOffset
ל-TransformingLazyColumnState
ול-rememberTransformingLazyColumnState
כדי שאפשר יהיה לציין את מיקום הגלילה הראשוני ב-TransformationLazyColumn
. (I0a0d5) - הוצאה משימוש של
runWithTimingDisabled
לטובתrunWithMeasurementDisabled
, שמתאר בצורה ברורה יותר את ההתנהגות – כל המדדים מושהים. בנוסף, צריך לחשוף את הסופר-קלאסMicrobenchmarkScope
כי אי אפשר להצהיר מחדש על הפונקציהrunWithMeasurementDisabled
כדי לפתוח את הגישה, כי היא נמצאת בקוד. (I9e23b, b/389149423, b/149979716) - הוספנו את
TransformingLazyColumnItemScrollProgress.Unspecified
ל-API כדי למנוע מצב שבוTransformingLazyColumnItemScrollProgress
יהיה בתוך תיבה. (I0835d)
תיקוני באגים
- שיפור Kdoc עבור
CurvedTextStyle
(Id45e3) - הגדרנו את
SwipeableV2
(חלק מההטמעה שלSwipeToReveal
) כפנימית במקום כציבורית, אבל מוגבלת לקבוצת הספרייה. (Idbb94) - הוספנו בדיקות ל-
HierarchicalFocusCoordinator
(I1ce54, b/395548918) - ביצענו שיפורים ב-
SwipeToReveal
בדוגמאות של תשתית ל-Wear Compose. (I5f307) - תיקון נתונים סמנטיים של ציר גלילה עבור
verticalScrollAxisRange
ב-TransformingLazyColumn
לשיפור הנגישות (I68123) - שיפור הביצועים של משוב הרטט המסתובב ב-Wear4+ על ידי הסרת שרשורים מיותרים ברקע (I39cfe)
- משנים את
SwipeDismissableNavHost
כך שישתמש ב-PredictiveBackNavHost
רק ב-API מגרסה 36 ואילך. (I59bed) - הוספנו הגנה מפני קריסה כשנכנסים להגדרה 'צמצום תנועה'. (I01e2c)
- הטמענו אחסון נתונים מראש ב-
TransformingLazyColumn
כדי לצמצם את התנודות בזמן הצגת התוכן (Icca88)
גרסה 1.5.0-alpha09
29 בינואר 2025
androidx.wear.compose:compose-*:1.5.0-alpha09
משוחרר. גרסת 1.5.0-alpha09 מכילה את ההוספות האלה.
שינויים ב-API
- ב-
CurvedTextStyle
, חילקנו את הריווח בין האותיות לריווח בכיוון השעון וריווח נגד כיוון השעון. צריך לעשות זאת כי האותיות בכיוון השעון מתרחבות מהקו הבסיסי, ואילו האותיות בכיוון ההפוך לשעון מתכווצות (לכן צריך יותר רווח בין האותיות) (I4b848) - הפונקציה
CompositionLocal
LocalReduceMotion
פשוטה יותר, והיא מחזירה ערך בוליאני במקום אובייקטReduceMotion
. הממשקReduceMotion
הוצא משימוש. אפשר להחליף קריאות קודמות כמוLocalReduceMotion.current.enabled()
ב-LocalReduceMotion.current
(I4937f) - ב-
PagerDefaults
, השם שלsnapAnimationSpec
השתנה ל-SnapAnimationSpec
. (I20c9a)
גרסה 1.5.0-alpha08
15 בינואר 2025
androidx.wear.compose:compose-*:1.5.0-alpha08
משוחרר. גרסת 1.5.0-alpha08 כוללת את ההוספות האלה.
שינויים ב-API
- עדכנו את כל הספריות של Wear Compose למצב 'ממשק API מפורש'. (Iebf9f)
- הפכנו את הפרמטר של אנימציית הצמדת הדף בחלונית הקריאה לחלק מ-
PagerDefaults
. (Ifff64) - הוספנו פרמטר של אופסט ל-
SwipeToDismissBoxState
. (I586bd)
תיקוני באגים
- אפשר להפעיל עכשיו משוב מישוש בפלטפורמה מסתובבת בגרסאות Wear OS אחרי V (Idb03e)
גרסה 1.5.0-alpha07
11 בדצמבר 2024
androidx.wear.compose:compose-*:1.5.0-alpha07
משוחרר. גרסת 1.5.0-alpha07 כוללת את ההוספות האלה.
שינויים ב-API
- עכשיו אפשר להשתמש ב-
TransformingLazyColumnState
כדי לעקוב אחרי התקדמות הגלילה הנוכחית על סמך אינדקסים של פריטי עוגן. (I72b01) - הוספנו אנימציות ל-
TransformingLazyColumn
כשמוסיפים, מסירים ומזיזים פריטים, אם הם כוללים אתModifier.animateItem
החדש. (Iecb9c) - עכשיו
TransformingLazyColumn
חושף ערכים עבורbeforeContentPadding
ו-afterContentPadding
. (Iccd5f) TransformingLazyColumn
מספק עכשיו את הרכיב המקומיLocalTransformingLazyColumnItemScope
של הקומפוזיציה, שרכיבים (כמוCard
ו-Button
ב-Material3) יכולים להשתמש בו כדי לשנות צורה באופן אוטומטי כשהם ממוקמים בתוךTransformingLazyColumn
. מבצעי הקריאה יכולים להשבית את הטרנספורמציה האוטומטית באמצעות המעטפת החדשהTransformExclusion
. (I1652f)
תיקוני באגים
- עדכנו את מהירויות ההזזה המינימליות והמקסימליות של תנועה סיבובית במכשירים שמטרגטים גרסה U ואילך. (I33559)
- תיקנו קריסה שהתרחשה אם פריט ב-
TransformingLazyColumn
לא הכיל רכיבים שניתנים לשילוב (Idb99d) - הוספנו תמיכה ב-
ScrollFeedbackProvider
לחישה רוטורית ב-Android Vanilla ice cream. (Ibc553) - הגדלת מרווח המגע כשמשתמשים ב-
SwipeToReveal
כדי לצמצם את הסיכוי להפעלה בטעות של החלקה בזמן גלילה אנכית. (Ic0672) - עדכנו את
SwipeDismissableNavHost
כך שישתמש ב-PredictiveBackHandler
כשהאפשרות הזו זמינה ב-API מגרסה 35 ואילך. במקרה כזה, יוחלו אנימציות חדשות. (I08c11)
גרסה 1.5.0-alpha06
13 בנובמבר 2024
androidx.wear.compose:compose-*:1.5.0-alpha06
משוחרר. גרסת 1.5.0-alpha06 כוללת את ההוספות האלה.
שינויים ב-API
- הפכנו את
ScrollInfoProvider
לפשוט יותר עבורPagerState
על ידי הסרת הפרמטרorientation
, שאין בו יותר צורך. ההתנהגות החדשה היא ש-TimeText
יישאר במקום גם בחלוקה אופקית וגם בחלוקה אנכית לדפים. (I71767) TransformingLazyColumn
הוצג בגרסאות קודמות. אנחנו מסירים עכשיו את כתובות האימייל החלופיות של Wear (LazyColumn
, שהופנו אלTransformingLazyColumn
) לטובת השם החדשTransformingLazyColumn
. כמו כן, הסרתנו את המאפייןheight
שלTransformingLazyColumnVisibleItemInfo
. במקום זאת, יש להשתמש ב-measuredHeight
. (I0ea1e)- שינינו את המפרט של
PagerDefaults.snapFlingBehavior
snapAnimationSpec
מ-Tween
ל-Spring
. (I10d02, b/349781047, b/303807950) - שדרגנו את
LocalReduceMotion
CompositionLocal
לגרסה יציבה (Ia6f32)
תיקוני באגים
- עדכנו את
Modifier.rotaryScrollable
כך שישתמש ב-focusTargetWithSemantics
כדי לשפר את התמיכה בסמינטיקה ב-rotary. (Ief0a0) - עדכנו את תלות ה-API המינימלית ל-1.7.4 בספריות Compose. (I88b46)
- השבתנו את שינוי הרוחב ב-
TransformingLazyColumn
כפתרון זמני לבאג של חיתוך. (I3dfb8) - תיקנו באג שגרם לפריטים להיעלם אחרי גלילה מעבר לקצה המסך עם
TransformingLazyColumn
(Id7668) - הוספנו את
LazyLayoutSemantics
עבורTransformingLazyColumn
. (Ia8f56)
גרסה 1.5.0-alpha05
30 באוקטובר 2024
androidx.wear.compose:compose-*:1.5.0-alpha05
משוחרר. גרסת 1.5.0-alpha05 כוללת את ההוספות האלה.
שינויים ב-API
- הוספנו תמיכה ב-
animateScrollTo
ב-TransformingLazyColumnState
כדי שאפשר יהיה להוסיף אנימציה לגלילה לפריט. (I4097d) - הוספנו את
requestScrollTo
ב-TransformingLazyColumnState
כדי לדחות את הגלילה למדידה הבאה. (I20a5e) - הוספנו תמיכה ב-
contentPadding
ב-TransformingLazyColumn
. (I3a69c)
תיקוני באגים
- תיקנו באג ברינדור של
TransformingLazyColumn
כשגובה התוכן קצר מגובה המסך. (I6c3e1) - עכשיו,
ScrollInfoProvder
שלTransformingLazyColumn
עוקב אחרי הפריט הראשון בצורה נכונה. (I1e4a3) TransformingLazyColumnState
שומר עכשיו את המצב שלו (anchorItemIndex
ו-anchorItemScrollOffset
). (I3d265)
גרסה 1.5.0-alpha04
16 באוקטובר 2024
androidx.wear.compose:compose-*:1.5.0-alpha04
משוחרר. גרסת 1.5.0-alpha04 כוללת את ההוספות האלה.
שינויים ב-API
- שינינו את השם של Wear Compose Foundation
LazyColumn
ל-TransformingLazyColumn
כדי להבדיל בבירור בינו לבין Compose FoundationLazyColumn
. (I0608b) - הוספנו תמיכה בלחצן מסתובב למכשירי טלפוניה ניידת אופקיים/אנכיים, כדי לאפשר למשתמשים לנווט במכשירי טלפוניה ניידת באמצעות מכשירי קלט מסתובבים. (I9770d)
- עדכנו את
PagerDefaults
החדש כדי להבהיר שהמעבר בין דפים יתבצע באופן אוטומטי כברירת מחדל. (Iff7d0) TransformingLazyColumnItemScrollProgress
הוא עכשיו סיווג ערך שצפוי לשפר את הביצועים. (Ic399e)- עכשיו יש תמיכה ב-
TransformingLazyColumn
ב-rotary מתוך האריזה. (I05206) - יש עכשיו תמיכה ב-
scrollToItem
ב-TransformingLazyColumnState
. (I507b3) - הוסר
@ExperimentalWearFoundationApi
מ-SwipeToReveal
API (I34a66)
גרסה 1.5.0-alpha03
2 באוקטובר 2024
androidx.wear.compose:compose-*:1.5.0-alpha03
משוחרר. גרסת 1.5.0-alpha03 מכילה את ההוספות האלה.
שינויים ב-API
- הוספנו תמיכה בהחלקה דו-כיוונית ב-
SwipeToReveal
, למקרים נדירים שבהם המסך הנוכחי לא תומך בהחלקה כדי לסגור. . ברירת המחדל עדיין היא החלקה כדי לחשוף רק בהחלקות מימין לשמאל, ומומלץ מאוד לפעול בהתאם לברירת המחדל כדי למנוע התנגשויות עם החלקה כדי לסגור. (Ifac04) - עדכנו את
LazyColumnState
כדי לשנות אתcanScrollForward
ו-canScrollBackward
– עכשיו הגלילה נעצרת כשהפריט הראשון או האחרון נמצאים בדיוק במרכז המסך. (Ia77d7) - הוספנו רכיבים חדשים של
HorizontalPager
ו-VerticalPager
כדי לטפל בבעיות נפוצות, כמו טיפול בפוקוס ואינטראקציה עם החלקה במערכת כדי לסגור, שעשויות להתרחש ב-Wear. (I2902b) - הוספנו תמיכה ב-
LazyColumn
כדי לחשוף אתkey
ו-contentType
של הלקוח דרךlayoutItems
. (I1bd9c)
תיקוני באגים
- עדכנו את האנימציות של הטקסט המעוקל כדי שהן יהיו חלקות יותר, באמצעות דגלים של צביעה. (I73a15)
- עדכנו את המסמכים של Material Dialog כך שישקפו את העובדה ש-
onDismissRequest
לא נקרא אחרי שהדגל show מוגדר כ-false. (Ifd8d6) - תיקנו באג באנימציית הוויניאט בתיבה המשוחזרת של Material (I126bf)
גרסה 1.5.0-alpha02
18 בספטמבר 2024
androidx.wear.compose:compose-*:1.5.0-alpha02
משוחרר. גרסת 1.5.0-alpha02 כוללת את ההוספות האלה.
שינויים ב-API
- הוספנו תמיכה ב-
LazyColumn
של Wear Compose באמצעותScreenScaffold
שלנו (והוספנו הטמעה שלScrollInfoProvider
ל-LazyColumnState
). (Ib8d29) - הוספנו את
viewportSize
ל-LazyColumnLayoutInfo
. (I4187f)
תיקוני באגים
- תיקנו באג כך שגלילה באמצעות לחצן ה-Rotary מושבתת עכשיו ב-
ScalingLazyColumn
כשהדגלuserScrollEnabled
מוגדר כ-false
. (I490ab, b/360295825) - תיקנו באג שקשור למרווח אנכי בלתי צפוי בטקסט מעוקל. גובה הטקסט המעוגל תואם עכשיו יותר למרחב בפועל שבו הטקסט נמצא. חשוב לדעת שהפעולה הזו עלולה לגרום לכשל בבדיקות של צילומי מסך שכוללים טקסט מעוקל (Iaa6ef)
- החזרת תיקון באג ל-
Dialog
, שבו הופעלה קריאה חוזרת (callback) שלonDismissRequest
כש-showDialog
הוגדר כ-false, כי במקרים מסוימים הקריאה החוזרת שלonDismissRequest
הופעלה כמה פעמים. (I64656)
גרסה 1.5.0-alpha01
4 בספטמבר 2024
androidx.wear.compose:compose-*:1.5.0-alpha01
משוחרר. גרסת 1.5.0-alpha01 מכילה את ההוספות האלה.
שינויים ב-API
- הוספנו
LazyColumn
חדש לספריית Wear Compose Foundation עם ממשקי ה-API המשויכיםLazyColumnState
ו-LazyColumnScope
. זהו הבסיס ליצירת אפקטים של התאמה לעומס (scaling) ושל טרנספורמציה (morphing) בהתאמה אישית באמצעות Wear Compose. (Ib3b22) - הוספנו גרסה שנוספה לאינדקס של
itemsIndexed
אלLazyColumnScope
כחלק מ-LazyColumn
API החדש. (Ib4a57) - הוספנו את המאפיינים המשתנים
LazyColumn
כדי לתמוך בהתנהגויות של שינוי קנה מידה וטרנספורמציה. (Ie229a) - גרסת
HierarchicalFocusCoordinator
קודמה לגרסה יציבה. (I31035) - הוספנו תמיכה בריווח בין האותיות לטקסט מעוקל. (I3c740)
- הוספנו פרמטר
rotationLocked
ל-CurvedLayout.curvedComposable
כדי להפסיק את הסיבוב של הרכיבים. (I66898) - ה-API הזמני של
LocalUseFallbackRippleImplementation
מ-wear material ומ-wear material3 הוסר (I62282) - המשתמש
WearDevices.SQUARE
הוסר מהתצוגה המקדימה המשותפת של@WearPreviewDevices
(I11c02)
תיקוני באגים
SwipeToReveal
ממקם עכשיו את הפריטים שנחשפו בחלק הגלוי של המסך. זה עוזר כשמשתמשים ב-SwipeToReveal
בתוך רשימה, כך שאפשר תמיד לבצע פעולות עם הפריטים והם אף פעם לא יוצאים מחוץ למסך. (I38929)SwipeToReveal
מאפס עכשיו אתlastActionType
ל-None כשהפעולהanimatedTo
מסתיימת. (I59b03)- שיפרנו את המסמך בנושא הפרמטר החדש
rotationLocked
ב-curvedComposable
. (Ifbd57) - תוקנה קריסה במעבר של
NaN
אלperformFling
שלScalingLazyColumnSnapFlingBehavior
. (Ic13da) - תוקן באג במשתנה לשינוי הגודל של פריסה מעוקלת (I0fedf)
- הוספנו תמיכה במרווח בין אותיות שצוין ב-'sp'. (I9f6e3)
- תיקנו באג ב-Material2 Dialog שבו פונקציית ה-callback
onDismissRequest
לא היתה נקראת כשתיבת הדו-שיח הפכה לא נראית (I64656) - השם של
LayoutCoordinates.introducesFrameOfReference
שונה ל-LayoutCoordinates.introducesMotionFrameOfReference
כדי לשקף טוב יותר את המטרה שלו. שינוי השם של פונקציה קשורה כדי לחשב קואורדינטות על סמך הדגל הזה. (I3a330)
גרסה 1.4
גרסה 1.4.1
12 בפברואר 2025
androidx.wear.compose:compose-*:1.4.1
משוחרר. גרסת 1.4.1 כוללת את ההוספות האלה.
תיקוני באגים
- תיקנו קריסה שעלולה הייתה להתרחש בזמן הגישה להגדרה הגלובלית 'צמצום תנועה', שהופעל בפלטפורמות מסוימות שבהן ההגדרה הזו לא הייתה זמינה. (I01e2c)
גרסה 1.4.0
4 בספטמבר 2024
androidx.wear.compose:compose-*:1.4.0
משוחרר. גרסת 1.4.0 כוללת את ההוספות האלה.
שינויים חשובים מאז גרסה 1.3.0
ScalingLazyColumn
ו-Picker
תומכים עכשיו בקלט רוטורי כברירת מחדל – מומלץ להסיר טיפול מפורש בלחצן רוטורי ולהשתמש בהתנהגות ברירת המחדל של המערכת. אם צריך, משתמשים בפרמטרrotaryScrollableBehavior
כדי להגדיר התנהגות גלילה או התנהגות הצמדה. להתנהגות הצמדה, מומלץ לספק התנהגות הצמדה ויכולות גלילה באמצעות המגע באמצעות הפרמטרflingBehavior
.Modifier.rotaryScrollable
הוא משתנה חדש שמקשר אירועים רוטורים לקונטיינרים שניתן לגלול בהם, ומאפשר למשתמשים לגלול באמצעות כתר או מסגרת מסתובבת במכשיר Wear OS.SwipeDismissableNavHost
מספק עכשיו אנימציית כניסה למעברים בתוך האפליקציה.- הסמל
PositionIndicator
מוצג עכשיו כברירת מחדל כשמסך מוצג בפעם הראשונה.
שינויים נוספים
- רשימה מלאה יותר של השינויים בגרסה 1.3.0 מופיעה בנתוני הגרסה של beta01.
גרסה 1.4.0-rc01
21 באוגוסט 2024
androidx.wear.compose:compose-*:1.4.0-rc01
משוחרר. גרסת 1.4.0-rc01 כוללת את ההוספות האלה.
- עדכנו את יחסי התלות של Compose לגרסה 1.7.0-rc01, והצמצמנו את Wear Compose Navigation ל-androidx.lifecycle 2.8.3
גרסה 1.4.0-beta03
12 ביוני 2024
androidx.wear.compose:compose-*:1.4.0-beta03
משוחרר. גרסת 1.4.0-beta03 כוללת את ההוספות האלה.
תיקוני באגים
- עדכנו את
Modifier.rotaryScrollable
כדי להחליף את השימוש ב-'focusable' ב-'focusTarget', וכך לשפר את הביצועים. (Id294b) - תיקנו בעיה שבה
ProgressIndicator
חזר על ההודעה שלו בקטעTalkBack
. (I94563) - עדכנו את פרופילי הבסיס של ספריית Wear Compose. (I3cbc3)
גרסה 1.4.0-beta02
29 במאי 2024
androidx.wear.compose:compose-*:1.4.0-beta02
משוחרר. גרסת 1.4.0-beta02 כוללת את ההוספות האלה.
תיקוני באגים
- הגדלנו את רוחב הגבול שמוענק לקוראי המסך מטקסט מעוקל, כדי לטפל בבעיות שקשורות לקיצוץ (Id865f).
- הגבלנו את הגבול של
HorizontalPageIndicator
שהועברו לקוראי המסך – בעבר האינדיקטור השתלט על המסך כולו (Id8d7a).
גרסה 1.4.0-beta01
14 במאי 2024
androidx.wear.compose:compose-*:1.4.0-beta01
משוחרר. גרסת 1.4.0-beta01 כוללת את ההוספות האלה.
הגרסה 1.4-beta01 של Compose for Wear OS מציינת שהגרסה הזו של הספרייה כוללת את כל התכונות, ושה-API נעול (למעט במקרים שבהם הוא מסומן כניסיוני). ב-Wear Compose 1.4 יש את הפונקציונליות החדשה הבאה:
- הוספנו את
Modifier.rotaryScrollable
, פונקציית שינוי חדשה שמחברת בין אירועים רוטורים לבין קונטיינרים שניתן לגלול בהם, ומאפשרת למשתמשים לגלול באמצעות כתר או מסגרת מסתובבת במכשיר Wear OS. בנוסף, עכשיו יש תמיכה ב-ScalingLazyColumn
וב-Picker
בהזנה באמצעות לחצן רוטורי כברירת מחדל. משתמשים בפרמטרrotaryScrollableBehavior
כדי להגדיר את התנהגות הגלילה או הצמדה. לגבי התנהגות הצמדה, מומלץ לספק הצמדה גם דרך הפרמטרflingBehavior
וגם לגבי גלילה במגע. SwipeDismissableNavHost
מספק עכשיו אנימציית כניסה למעברים בתוך האפליקציה.- הסמל
PositionIndicator
מוצג עכשיו כברירת מחדל כשמסך מוצג בפעם הראשונה. - הערכים
SelectableChip
ו-SplitSelectableChip
נוספו כגרסה משתנה שלToggleChip
– אפשר להשתמש בהם עםRadioButton
כדי לספק סמנטיקה שניתן לבחור במקום סמנטיקה שניתן להפעיל או להשבית לצורכי נגישות ListHeader
תומך עכשיו בהתאמות גובה כשהתוכן צריך גובה נוסף כדי להתאים לגופנים גדולים.
תיקוני באגים
- תיקנו באג שבו צ'יפים שאפשר לבחור בהם הודיעו על לחיצה כפולה כדי להחליף מצב כשהם כבר נבחרו. (I7ed88)
גרסה 1.4.0-alpha08
1 במאי 2024
androidx.wear.compose:compose-*:1.4.0-alpha08
משוחרר. גרסת 1.4.0-alpha08 כוללת את ההוספות האלה.
שינויים ב-API
- ביצענו את השינויים הבאים ב-API החדש של Rotary: שינינו את השם של
Modifier.rotary
ל-Modifier.rotaryScrollable
, שינינו את השם של הממשקRotaryBehavior
ל-RotaryScrollableBehavior
ואת השם של הפונקציה שלוhandleScrollEvent
ל-performScroll
, שינינו את השם שלRotaryScrollableAdapter
ל-RotaryScrollableLayoutInfoProvider
והסרנו את המאפייןscrollableState
. (I0c8a6) - ביצענו שינויים נוספים ב-API של Rotary: שינינו את השם של
RotaryScrollableLayoutInfoProvider
ל-RotarySnapLayoutInfoProvider
(כי הספק הזה נדרש רק ל-Rotary עם Snap), שינינו את הסוג של הפרמטרsnapOffset
ב-RotaryScrollableDefaults.snapBehavior snapOffset
מ-Int ל-Dp. (Iddebe) - שינינו את השם של הפרמטר
clickInteractionSource
ב-SplitSelectableChip
ל-containerInteractionSource
. (Ia8f84) - עדכנו את השמות של הפרמטרים של קריאה חוזרת לאחר קליק עבור
SplitSelectableChip
– מ-onClick
ל-onSelectionClick
ומ-onBodyClick
ל-onContainerClick
. (I32237)
תיקוני באגים
- עדכנו את הריפוד האופקי של
PositionIndicator
ל-2dp (היה 5dp), כדי לתקן באג שבוPositionIndicator
(סרגל הגלילה) חופף לתוכן שניתן לגלילה. חשוב לזכור שהשינוי הזה צפוי לגרום לשיבושים בצילום המסך הקיים שכולל אתPositionIndicator
בגלל השינוי במרווחים. (I57472) - שיפרנו את המסמכים של ה-API החדש למכשירי סריקה רוטורים, והוספנו תיאור של ההבדלים בין מכשירים רוטורים ברזולוציה נמוכה לבין מכשירים רוטורים ברזולוציה גבוהה. (I63abe)
- תיקנו חריגה מטווח ב-
SwipeDismissableNavHost
שעלולה הייתה להתרחש כשערכים של אלפא שעבר תהליך אינטרפולציה היו פחות מאפס. (Ib75a1, b/335782510)
גרסה 1.4.0-alpha07
17 באפריל 2024
androidx.wear.compose:compose-*:1.4.0-alpha07
משוחרר. גרסת 1.4.0-alpha07 מכילה את ההוספות האלה.
שינויים ב-API
- הוספנו את
Modifier.rotary
, פונקציית שינוי חדשה שמחברת בין אירועים רוטורים לבין קונטיינרים שניתן לגלול בהם, ומאפשרת למשתמשים לגלול באמצעות כתר או מסגרת מסתובבת במכשיר Wear OS. בנוסף,ScalingLazyColumn
ו-Picker תומכים עכשיו בהזנה מסתובבת כברירת מחדל, עם עומסי יתר חדשים שכוללים את הפרמטרrotaryBehavior
כדי לציין את ההגדרה של גלילה או הצמדה. אם הפרמטרrotaryBehavior
מוגדר ל-snap, מומלץ לספק snap גם דרך הפרמטרflingBehavior
, לגלילה במגע. (I2ef6f) - המקורות
NestedScroll
Drag ו-Fling מוחלפים ב-UserInput
וב-SideEffect
כדי להתאים להגדרה המורחבת של המקורות האלה, שכוללת עכשיו אנימציות (Side Effect) גלגל עכבר ומקלדת (UserInput). (I40579) - הוספנו את הסמלים
SelectableChip
ו-SplitSelectableChip
כדי להבדיל בצורה ברורה יותר בין לחצני החלפת מצב כמוSwitch/Checkbox
לבין לחצני בקרה לבחירה כמוRadioButton
. הפעולה הזו מחליפה את עומסי יתר הקודמים שלToggleChip/SplitToggleChip
בפרמטרים שלselectionControl
. (Ia0217) - עדכנו את משתנה החשיפה של
IndeterminateStrokeWidth
ב-ProgressIndicatorDefaults
ל'גלוי לכולם'. (I5b5a4)
גרסה 1.4.0-alpha06
3 באפריל 2024
androidx.wear.compose:compose-*:1.4.0-alpha06
משוחרר. גרסת 1.4.0-alpha06 מכילה את ההוספות האלה.
תיקוני באגים
- הוספנו טיוטה פנימית של תמיכה ב-Rotary, כחלק מהמאמץ הכולל להעביר את ההתנהגות של Rotary ל-AndroidX מ-Horologist. (I617d1)
- הוספנו טיוטה פנימית של תמיכה בהפעלה חושית, כחלק מהמאמץ הכולל להעביר את ההתנהגות של Rotary ל-AndroidX מ-Horologist. (I5568a)
גרסה 1.4.0-alpha05
20 במרץ 2024
androidx.wear.compose:compose-*:1.4.0-alpha05
משוחרר. גרסת 1.4.0-alpha05 כוללת את ההוספות האלה.
שינויים ב-API
- הגדרנו את המאפיינים
initialCenterItemIndex
ו-initialCenterItemScrollOffset
שלScalingLazyListState
כציבוריים. (I0c616) - הגדרנו את
FullScreenStrokeWidth
מ-ProgressIndicatorDefaults
כ'גלוי לכולם'. (Ibea23)
תיקוני באגים
- שיפרנו את הביצועים של
PositionIndicator
על ידי הפחתת מספר הקריאות ל-layoutInfo
מ-ScalingLazyColumn
. (Idc83d)
גרסה 1.4.0-alpha04
6 במרץ 2024
androidx.wear.compose:compose-*:1.4.0-alpha04
משוחרר. גרסת 1.4.0-alpha04 מכילה את ההוספות האלה.
שינויים ב-API
- הוספנו עומס יתר חדש ל-
ToggleChip
ול-SplitToggleChip
, שמקבל פרמטרselectionControl
במקום הפרמטרtoggleControl
. צריך להשתמש באפשרות הזו עם אמצעי הבקרהRadioButton
כדי לספק סמנטיקה שניתן לבחור במקום סמנטיקה שניתן להחליף למצב מופעל/מושבת לצורכי נגישות (I1d6d9) - עדכנו את שמות הפרמטרים של עומס יתר חדש של
selectionControl
מ-onSelected
ל-onSelect
עבורToggleChip
ו-SplitToggleChip
(I1a971)
גרסה 1.4.0-alpha03
21 בפברואר 2024
androidx.wear.compose:compose-*:1.4.0-alpha03
משוחרר. גרסה 1.4.0-alpha03 כוללת את ההצהרות האלה.
שינויים ב-API
- העטיפה
Modifier.inspectable
יצאה משימוש. ה-API הזה יוצר יותר ביטולים של המשתנה המשנה ממה שנחוץ, ולכן לא מומלץ להשתמש בו. מפתחים מומלצים להטמיע את השיטהinspectableProperties()
ב-ModifierNodeElement
אם הם רוצים לחשוף נכסי מודификаторים לכלים. (Ib3236)
תיקוני באגים
- תיקנו באג במסמכי העזרה לגבי הערות
WearPreview*
. (Id526d)
גרסה 1.4.0-alpha02
7 בפברואר 2024
androidx.wear.compose:compose-*:1.4.0-alpha02
משוחרר. גרסה 1.4.0-alpha02 מכילה את ההצהרות האלה.
תיקוני באגים
- תיקנו באג ב'החלקה כדי לחשוף', שבו אפשר היה לבצע פעולה (ולבטל אותה) בפריט אחד על ידי החלקה על פריט אחר.(Ide059)
- עדכנו את
ListHeader
כדי לתמוך בהתאמות גובה כשהתוכן צריך גובה נוסף כדי להתאים לגדלי גופן גדולים. (I7290c, b/251166127)
גרסה 1.4.0-alpha01
24 בינואר 2024
androidx.wear.compose:compose-*:1.4.0-alpha01
משוחרר. גרסה 1.4.0-alpha01 מכילה את ההצהרות האלה.
תכונות חדשות
- הוספנו אנימציה לכניסה ל-
SwipeDismissableNavHost
למעברים בתוך האפליקציה.(cfeb79a) - הסמל
PositionIndicator
מוצג עכשיו כברירת מחדל כשמסך מוצג בפעם הראשונה. השינוי הזה הוכנס כדי לעזור לעמוד בהנחיות האיכות של Wear. לצערנו, המשמעות היא שצריך לעדכן את בדיקות צילומי המסך במסכים שכוללים אתPositionIndicator
, כיPositionIndicator
לא הוצג בעבר. (419cef7)
שינויים ב-API
- הוספנו ממשק API חדש של Ripple בספריות
wear:compose-material
ו-wear:compose-material3
, שמחליף אתrememberRipple
שהוצא משימוש. הקוד גם מוסיףCompositionLocal
זמני,LocalUseFallbackRippleImplementation
, כדי להחזיר את רכיבי Material לשימוש בממשקי ה-API שלrememberRipple/RippleTheme
שהוצאו משימוש. האפשרות הזו תוסר במהדורה היציבה הבאה, והיא מיועדת רק לעזרה זמנית בהעברה במקרים שבהם אתם מספקיםRippleTheme
מותאם אישית. באתר developer.android.com אפשר למצוא מידע על ההעברה ומידע נוסף על הרקע של השינוי הזה. (af92b21) - עדכנו את
ColorScheme
כך שלא ניתן יהיה לשנות אותו. כתוצאה מכך, עדכוני צבעים ספציפיים יהיו פחות יעילים, אבל השימוש הנפוץ יותר בצבעים יהיה יעיל יותר. הסיבה לשינוי הזה היא שברוב האפליקציות, עדכון צבעים ספציפיים לא יהיה תרחיש לדוגמה עיקרי. עדיין אפשר לעשות זאת, אבל תתבצע יותר יצירת קומפוזיציה מחדש מאשר בעבר. כתוצאה מכך, נוכל להפחית באופן משמעותי את כמות המינויים למצבים בכל הקוד של החומר, והדבר ישפיע על עלות ההפעלה הראשונית ועל עלות זמן הריצה בתרחישי שימוש רגילים יותר. (f5c48b7) - רכיבי Wear material ו-Wear material3 שחשפו
MutableInteractionSource
ב-API שלהם עודכנו כך שיחשפו עכשיוMutableInteractionSource
שאפשר להעביר לו ערך null כברירת מחדל. אין כאן שינויים סמנטיים: העברת null פירושה שאתם לא רוצים להעביר אתMutableInteractionSource
, והוא ייווצר בתוך הרכיב במקרה הצורך. שינוי ל-null מאפשר לרכיבים מסוימים לא להקצות אף פעםMutableInteractionSource
, ולרכיבים אחרים ליצור מופע רק באופן עצלני כשהם צריכים, וכך לשפר את הביצועים של הרכיבים האלה. אם אתם לא משתמשים ב-MutableInteractionSource
שאתם מעבירים לרכיבים האלה, מומלץ להעביר null במקום זאת. מומלץ גם לבצע שינויים דומים ברכיבים שלכם. (f8fa920) - עדכנו את
rememberExpandableState
כדי לשמור את המצב של התפריט הנפתח. כך הנתונים מאוחסנים כשעוברים למסך אחר, ומוחזרים כשחוזרים למסך המקורי. (5c80095)
תיקוני באגים
- עדכנו את ההגדרה
ReduceMotion
כך שתשתמש במאזין שמודע למחזור החיים. (7c6b122) - עדכנו את ה-Listener של
TouchExplorationStateProvider
כך שיהיה מודע למחזור החיים (be28b01) - הסרתנו את השכבה של materialcore עבור
CompactButton
כדי לשפר את הביצועים (25db8e9) - שיפרנו את ההתנגדות של
BasicSwipeToDismissBox
להיסטים של NaN כדי למנוע חריגות (b983739) - עדכנו את
BasicSwipeToDismissBox
כדי לוודא שערכים אלפא נמצאים בטווח 0,1 - תיקנו באג בתפקידים
ToggleButton
, SplitToggleButton
, Checkbox
, Switch
ו-RadioButton
כדי שהודעות על נגישות לא יחזרו על עצמן (בעבר, תפקידים סמנטיים היו כפולים) (d11eeb7)
גרסה 1.3
גרסה 1.3.1
3 באפריל 2024
androidx.wear.compose:compose-*:1.3.1
משוחרר. גרסת 1.3.1 מכילה את ההוספות האלה.
תיקוני באגים
- תיקנו באג ב'החלקה כדי לחשוף', שבו אפשר היה לבצע פעולה (ולבטל אותה) על פריט אחד על ידי החלקה על פריט אחר. (Ide059)
גרסה 1.3.0
24 בינואר 2024
androidx.wear.compose:compose-*:1.3.0
משוחרר. גרסה 1.3.0 כוללת את ההצהרות האלה.
שינויים חשובים מאז גרסה 1.2.0
- הכיתה
SwipeToDismissBoxState
, המנייןSwipeToDismissValue
ופונקציית התוסףModifier.edgeSwipeToDismiss
הם עכשיו חלק מחבילתandroidx.wear.compose.foundation
, במקום מחבילתandroidx.wear.compose.material
. הארכיטקטורה המעודכנת הזו מאפשרת להטמיע טיפול בתנועות בנפרד מהיבטים אחרים של עיצוב. תהליכי העבודה של Material Design, כמו החלת צבעים מעיצוב מוגדר, מטופלים בנפרד. - המחלקות
SwipeToRevealCard
ו-SwipeToRevealChip
עוזרות להטמיע אתrecommended swipe-to-reveal guidance
. בכיתהSwipeToRevealSample
מוסבר איך משתמשים ברכיבים האלה. במהדורה 1.3.0-alpha02 הוספנו שינוי שגורם לגובה של אובייקטים מסוג
Chip
ו-ToggleChip
לגדול, כדי לתמוך טוב יותר בשינוי גודל הגופן שנבחר על ידי המשתמש. כתוצאה מכך, יכול להיות שיהיה קיצוץ מסוים. כדי לפתור את הבעיה, עכשיו יש לצורתlarge
שלMaterialTheme
רדיוס פינה גדול יותר (26dp במקום 24dp). כדי למנוע חיתוך של תוכן בפינות של Chip ו-ToggleChip
, האובייקטיםChip
ו-ToggleChip
משתמשים ברדיוס הפינה החדש הזה.- רוב הערכים של
Chips
ו-ToggleChips
לא השתנו, כי הגובה שמוגדר כברירת מחדל הוא 52dp. עם זאת, אובייקטים מסוגChip
ו-ToggleChip
שמכילים כמה שורות של טקסט של תווית ראשית או משנית, או אובייקטים שהגובה שלהם השתנה, עלולים לגרום לכשלים בבדיקות של צילומי המסך.
- רוב הערכים של
שינויים נוספים
רשימה מלאה יותר של השינויים בגרסה 1.3.0 מופיעה בנתוני הגרסה של beta01.
המלצות להטמעה
- אם האפליקציה מאפשרת למשתמשים להזיז את התוכן במסך, למשל באפליקציה שמבוססת על מפה, משביתים את הטיפול בהחלקה על ידי הגדרת
userSwipeEnabled
ל-false
ב-composableSwipeDismissableNavHost
, ומוסיפים לחצן שמאפשר למשתמשים לעבור למסך הקודם. - כדי להשבית אנימציות של מחוון מיקום במהלך אנימציות של מעבר תוך כדי הדרגתיות ואנימציות של שינוי מיקום ברשימה שנגללת, משתמשים באובייקט
SnapSpec
. - בזמן ההמתנה לאפליקציית מדיה שטענת תוכן להפעלה, מוצג רכיב
Placeholder
ריק. - כדי ליצור אוסף של פריטים שניתן להרחיב על פי דרישה, כדאי להשתמש בכיתה הניסיונית
ExpandableStateMapping
.
גרסה 1.3.0-rc01
10 בינואר 2024
androidx.wear.compose:compose-*:1.3.0-rc01
משוחרר. גרסה 1.3.0-rc01 כוללת את ההוספות האלה.
תיקוני באגים
-
עדכנו את הצורה הגדולה של
MaterialTheme
כך שתהיה לה פינות מעוגלות ברדיוס של 26dp. עכשיו הצורה הזו תהיה בשימוש ב-Chip וב-ToggleChip
. השינוי הזה נדרש כדי לתמוך בהתאמות גובה כשהתוכן צריך גובה נוסף כדי להתאים לגדלי פונט גדולים. אחרת, צורת האצטדיון הקיימת תגרום לחיתוך של חלק מתוכן הטקסט.איור 1: טקסט חתוך בפינות. איור 2: הטקסט לא חתוך. השינוי הזה עלול לגרום לשיבושים בבדיקות של צילומי המסך. (I2e6ae)
גרסה 1.3.0-beta02
13 בדצמבר 2023
androidx.wear.compose:compose-*:1.3.0-beta02
משוחרר. גרסה 1.3.0-beta02 מכילה את ההצהרות האלה.
תיקוני באגים
- שחזרנו את תנועת החלקה המתוכננת ב-
BasicSwipeToDismissBox
. השינוי הזה בוצע במהדורה קודמת, כך שחלק ההחלקה של המעבר התרחש בזמן שהאצבע נוגעת במסך. (Id8e76)
גרסה 1.3.0-beta01
15 בנובמבר 2023
androidx.wear.compose:compose-*:1.3.0-beta01
משוחרר. גרסה 1.3.0-beta01 מכילה את ההצהרות האלה.
הגרסה 1.3-beta01 של Compose for Wear OS מציינת שהגרסה הזו של הספרייה כוללת את כל התכונות, וממשק ה-API נעול (למעט במקרים שבהם הוא מסומן כניסיוני). גרסה 1.3 של Wear Compose כוללת את הפונקציות החדשות הבאות:
SwipeToDismissBoxState
, SwipeToDismissValue
ו-Modifier.edgeSwipeToDismiss
הועברו מ-androidx.wear.compose.material
אלandroidx.wear.compose.foundation
, יחד עם ההטמעה הבסיסית של החלקה כדי לסגור ב-BasicSwipeToDismissBox
. כך אפשר להשתמש בטיפול בתנועות כדי לסמן 'סגירה' על ידי החלקה בנפרד מ-Material Design, למשל מהסמלSwipeDismissableNavHost
ב-androidx.wear.compose.navigation
. עדיין מומלץ להשתמש ב-SwipeToDismissBox
מ-androidx.wear.compose.material
עם Material Design, כי הוא שולף צבעים מ-MaterialTheme
ואז מעביר את שאר ההטמעה ל-BasicSwipeToDismissBox
.SwipeDismissableNavHost
תומך עכשיו בפרמטר חדשuserSwipeEnabled
, כדי שאפשר יהיה להשבית את הטיפול בהחלקה במסכים שבהם הוא לא נדרש.BasicSwipeToDismissBox
משופר את טיפול המיקוד באמצעותHierarchicalFocusCoordinator
.- ב-
SwipeToReveal
יש רכיבים חדשים מסוגSwipeToRevealCard
ו-SwipeToRevealChip
ב-Material, שתואמים להנחיות המומלצות בנושא חוויית משתמש (UX) עבורCard
ו-Chip
. יש גם תמיכה בביטול הפעולה המשנית. DefaultTextStyle
משבית עכשיו את הוספת הריפוד לגופן כדי לשמור על עקביות בפלטפורמת Android.- הגובה של
Chip
ו-ToggleChip
משתנה עכשיו בהתאם לתוכן שהתרחב בגלל גופנים גדולים, כדי לשפר את הנגישות PositionIndicator
כולל עכשיו מפרטי אנימציה נפרדים לאנימציות של עמעום הדרגתי, עמעום הדרגתי החוצה ותנועה למיקום אחר. מטעמי ביצועים, מומלץ להשבית את ההגדרות 'הופעה בהדרגה' ו'שינוי מיקום' כשמשתמשים ברשימות שאפשר לגלול בהן.ExpandableStateMapping
מספקת דרך חדשה ליצורExpandableStates
כשצריך ליצור אותם על פי דרישה, ולא בהכרח בהיקף@Composable
.- עכשיו אפשר לאפס את
Placeholder
אם התוכן כבר לא בסטטוס 'מוכן'. בנוסף, ההגדרה 'צמצום התנועה' חלה עכשיו על האפקט של הבהוב ועל תנועת המחיקה ב-Placeholder
.
בעיות מוכרות
PositionIndicator
לא מוצגת בהתחלה כשמסך מוצג בפעם הראשונה. אנחנו מתכוונים לבצע שינוי בגרסה מוקדמת של גרסת האלפא 1.4, כך שהיא תוצג בהתחלה אבל ללא אנימציה.
שינויים ב-API
- שינינו את השם של רמת הבסיס
SwipeToDismissBox
ל-BasicSwipeToDismissBox
. כך אפשר להבחין בבירור בין הרכיב ברמת הבסיס לבין הרכיב ברמת החומרSwipeToDismissBox
. הקוד האחרון שולף צבעים מה-MaterialTheme
לשימוש במסכי ה-scrim ומעביר את שאר ההטמעה ל-BasicSwipeToDismissBox
. (Ibecfc) - סימנו את
rememberExpandableStateMapping
כניסוי ושפרנו את הביצועים שלexpandableItem
. (I5f6bc) - החלפנו את הכיתה
SwipeToRevealAction
בממשקי ה-API של כרטיסיSwipeToReveal
ושבבים של Material ב-API מבוסס-תצוגה שמשתמש ברכיבים הניתנים לקישורSwipeToRevealPrimaryAction
, SwipeToRevealSecondaryAction
ו-SwipeToRevealUndoAction
. בדוגמאות הקוד מפורטות דוגמאות לשימוש ב-API החדש. (Ia8943) - החלפנו את דגלי האנימציה
PositionIndicator
בפרמטריםAnimationSpec
. כדי להשבית את האנימציות הנפרדות, מעבירים את הערךsnap
כ-AnimationSpec
. (I6c523)
תיקוני באגים
- תיקנו באג שנגרם כתוצאה מטקסט מעוקל מוגבל כשהגודל מוגבל (I50efe)
- טיפלנו בקריסה פוטנציאלית של NaN שקשורה ל-
curvedComposable
(I970eb) - ב-
PositionIndicator
ביטלנו את ההסרה של אנימציית ההדגשה של שינוי המיקום. (Ieb424) - כדי לשפר את הביצועים של צ'יפ החומר, הסרנו את השכבה של הליבה של החומר. (If2dcb)
גרסה 1.3.0-alpha08
18 באוקטובר 2023
androidx.wear.compose:compose-*:1.3.0-alpha08
משוחרר. גרסה 1.3.0-alpha08 מכילה את ההצהרות האלה.
שינויים ב-API
- הוספנו דגלים נפרדים לעומסי יתר של
PositionIndicator
כדי לשלוט באנימציות שונות:showFadeInAnimation
,showFadeOutAnimation
ו-showPositionAnimation
. ה-API הקודם הוצא משימוש והוא מעביר את הקריאות ל-API החדש. מטעמי ביצועים ועקב עקביות בממשק המשתמש, כשמשתמשים ב-PositionIndicator
עם רשימה שאפשר לגלול בה, מומלץ להשבית את הדגליםshowFadeInAnimation
ו-showPositionAnimation
. אם משתמשים ב-PositionIndicator
כאינדיקטור עצמאי, למשל לשינוי עוצמת הקול, מומלץ להפעיל את כל 3 האנימציות. (I44294) - הוצאנו משימוש את הרכיבים
SwipeToDismissBoxState
, SwipeToDismissValue
ו-edgeSwipeToDismiss
של Material Design בעקבות ההעברה של הפונקציונליות של החלקה כדי לסגור אלwear.compose.foundation
. צריך להחליף את התגים האלה בתגים המקבילים שלwear.compose.foundation
. (Iee8c9)
תיקוני באגים
- עדכנו את הפרופילים הבסיסיים של ספריות ה-foundation, material ו-navigation של Wear Compose. (Idb060)
- הפכנו שינוי התנהגותי ב-
PositionIndicator
שהוכנס ב-CL קודם, כך שה-PositionIndicator
נעשה מונפש כשמסך מוצג בפעם הראשונה. אנחנו מתכוונים לבצע שינוי דומה בגרסה מוקדמת של גרסת האלפא 1.4, כך שהסמלPositionIndicator
יוצג בהתחלה, אבל ללא אנימציה. (I41843) - טיפלנו בבעיות ביצועים מסוימות ב-
PositionIndicator
. (I1c654, b/302399827) - ביצענו אופטימיזציה של הביצועים של ההטמעה שמוגדרת כברירת מחדל של ספק המצב של ניתוח המגע, כדי להסתמך על
State<Boolean>
במקום על מצב נגזר. (Ieec4d) - הגדרנו את
systemGestureExclusion
כריבועים ל-Android מגרסה 13 ואילך. (Ib1f4b)
גרסה 1.3.0-alpha07
4 באוקטובר 2023
androidx.wear.compose:compose-*:1.3.0-alpha07
משוחרר. גרסה 1.3.0-alpha07 מכילה את ההצהרות האלה.
שינויים ב-API
- הוספנו דגלים נפרדים ל-
PositionIndicator
כדי לשלוט באנימציות שונות:showFadeInAnimation
, showFadeOutAnimation
ו-showPositionAnimation
. ה-API הקודם הוצא משימוש והוא מעביר את הקריאות ל-API החדש. מטעמי ביצועים ועקב עקביות בממשק המשתמש, כשמשתמשים ב-PositionIndicator
עם רשימה שאפשר לגלול בה, מומלץ להשבית את הדגליםshowFadeInAnimation
ו-showPositionAnimation
. אם משתמשים ב-PositionIndicator
כאינדיקטור עצמאי, למשל לשינוי עוצמת הקול, מומלץ להפעיל את כל 3 האנימציות. (Ia2d63)
תיקוני באגים
- שיפרנו את התנועה של החלקה כדי לחשוף, על ידי הוספת אנימציית דעיכה לטקסט של הפעולה הראשית, דעיכה של הפעולה המשנית או שינוי קנה המידה של הסמל כשמחליקים כדי להרחיב את התמונה במלואה. (Ib7223)
- מומלץ להפוך את הפעולות של 'החלקה כדי לחשוף' לנגישות, והוספנו דוגמאות של פעולות נגישות מותאמות אישית ל'החלקה כדי לחשוף'. (I42224)
- שיפרנו את הביצועים של
SwipeToDismissBox
, כולל רפגורמציה כדי לוודא שהלוגיקה הראשונית לא תגרום ליצירת קומפוזיציה מחדש.SwipeToDismissBox
מצויר עכשיו בגודל המסך המלא. (Ie0aa2) - תיקנו באג שבו
PositionIndicator
נעלם באופן שגוי. (I2091a) - שיפור הביצועים של
PositionIndicator
באמצעות אופטימיזציה של קומפוזיציות מחדש. לאחר מכן נוספו דגלים חדשים לצורך בקרה על האנימציות (fadeIn
, fadeOut
ו-positionChange
) (ראו שינויים ב-API) (Ifac7d) - הוספנו בדיקות של Microbenchmark ל-
PositionIndicator
(Idf875)
גרסה 1.3.0-alpha06
20 בספטמבר 2023
androidx.wear.compose:compose-*:1.3.0-alpha06
משוחרר. גרסה 1.3.0-alpha06 מכילה את ההוספות האלה.
תיקוני באגים
- הוספנו תמיכה ב-
Modifier.edgeSwipeToDismiss
באמצעותSwipeToReveal
. (I95774, b/293444286) - הוספנו דוגמאות לחומרי
SwipeToRevealChip
ו-SwipeToRevealCard
. (Ieb974) - עדכנו את הפרופילים הבסיסיים של ספריות Wear Compose Foundation ו-Material. (I1dd1f)
גרסה 1.3.0-alpha05
6 בספטמבר 2023
androidx.wear.compose:compose-*:1.3.0-alpha05
משוחרר. גרסה 1.3.0-alpha05 מכילה את ההצהרות האלה.
תיקוני באגים
- הוספנו טיפול ב'החלקה כדי לחשוף', כך שאפשר להחליק רק פריט אחד בכל פעם. (I3cd7a)
- שיפרנו את המסמכים הטכניים של
ScalingLazyColumnDefaults
כדי שהם ישקפו בצורה טובה יותר את ההתנהגות בפועל. (I886d3)
גרסה 1.3.0-alpha04
23 באוגוסט 2023
androidx.wear.compose:compose-*:1.3.0-alpha04
משוחרר. גרסה 1.3.0-alpha04 מכילה את ההצהרות האלה.
תכונות חדשות
- הוספנו תמיכה בביטול הפעולה המשנית של
SwipeToReveal
. (I7a22d)
שינויים ב-API
- מוסיפים את
HorizontalPageIndicator
בספרייה של Wear Material3. (Ifee99) - עדכנו את כלי התצוגה המקדימה של Wear Compose כך שישתמשו בספרייה
androidx.wear.tooling.preview
. (Ib036e)
תיקוני באגים
- תוקן באג בלחצנים עגולים שבהם המשתנים המשתנים לא נקשרו בצורה נכונה. (I5e162)
גרסה 1.3.0-alpha03
9 באוגוסט 2023
androidx.wear.compose:compose-*:1.3.0-alpha03
משוחרר. גרסה 1.3.0-alpha03 מכילה את ההצהרות האלה.
שינויים ב-API
- הוספנו שני רכיבים חדשים ב-Material ליצירת רכיבים מורכבים, לצורך הטמעת
SwipeToReveal
באמצעות כרטיסים ושבבים. הרכיבים האלה עומדים בהנחיות המומלצות של חוויית המשתמש לגבי הרכיב, ומאפשרים למפתחים להטמיע בקלות אתSwipeToReveal
באמצעות הרכיבים הקיימים ב-Material Design ל-Wear. (I7ec65) - הפעלנו את ההערות של
FloatRange
כמגבלות API, כפי שצוינו בעבר בתגובות. (Icb401)
תיקוני באגים
- העברנו את הלוגיקה הראשונית של גלילה ב-
ScalingLazyColumn
אל תוךonGloballyPositioned()
. (Ic90f1) - עכשיו אנחנו משתמשים ב-
drawWithCache
ב-PositionIndicator
, ב-ProgressIndicator
וב-SelectionControls
כדי לבצע אופטימיזציה של הקצאות הקווים. (I5f225, b/288234617) - תיקנו את הבעיה של הצגת הסימון בתיבות סימון במצבים מושבתים. (Ib25bf)
- עדכנו את
Placeholder
כדי לאפשר איפוס להצגת placeholder אם התוכן כבר לא בסטטוס 'מוכן'. (Ibd820) - ביצענו כמה תיקונים לבדיקות
Placeholder
לא יציבות (Idb560)
גרסה 1.3.0-alpha02
26 ביולי 2023
androidx.wear.compose:compose-*:1.3.0-alpha02
משוחרר. גרסה 1.3.0-alpha02 מכילה את ההצהרות האלה.
שינויים ב-API
- הוספנו את
ExpandableStateMapping
, דרך חדשה ליצירתExpandableStates
, למקרים שבהם צריך ליצור אותם על פי דרישה, ולא בהכרח בהיקף של@Composable
(Iff9e0) SwipeToDismissBox
הועבר מחבילהandroidx.wear.compose.material
לחבילהandroidx.wear.compose.foundation
. (I275fb)- עדכנו את קובצי ה-API כדי להוסיף הערות לגבי ביטול תאימות. (I8e87a, b/287516207)
- הפכנו את קבועי הגובה של
Chip
, CompactChip
ו-ToggleChip
לציבוריים (Idbfde) - העברנו את הרווח האנכי והרווח האופקי של
Chip
ו-CompactChip
לסטטוס 'גלוי לכולם'. (Ieeaf7) - נוספה פונקציונליות להשבתת הטיפול בהחלקה ב-
SwipeDismissableNavHost
באמצעות הפרמטר החדשuserSwipeEnabled
. (Id2a0b, b/230865655) - עדכנו את ספריית הניווט של Wear Compose כך שתשתמש ב-
SwipeToDismissBox
החדש מ-Wear Compose Foundation. (I4ff8e)
תיקוני באגים
- תיקנו באג שקשור לסדר z, שבו
expandedItem
לא הציג את התוכן הנכון אחרי לחיצה על התנהגות של לחצן כשיש לחצנים. (I1899d, b/289991514) - שיפור הטיפול במיקוד של
SwipeToDismissBox
(ולכן גם שלSwipeDismissableNavHost
) באמצעותHierarchicalFocusCoordinator
(I45362, b/277852486) - תיקנו את הטיפול בתנועות ב-
SwipeableV2
. (I89737) - סיימנו את הגדרת הפרופילים הבסיסיים לגרסה 1.2. (Id5740)
- בעקבות ההעברה של
SwipeToDismissBox
ל-Foundation, ההטמעה של MaterialSwipeToDismissBox
מעבירה עכשיו ל-Foundation ומספקת ערכים שמוגדרים כברירת מחדל מהעיצוב שלה.(If8451) - הוספנו סמנטיקה של כותרות אל
ListHeader
. (Ic5420) - כשצריך, הגובה של
Chip
ו-ToggleChip
יותאם עכשיו כדי להכיל תוכן שהתרחב בגלל גופנים גדולים, לצורכי נגישות. (Iaf302) - תיקנו באג בתפקיד הסמנטי של האזור שניתן להקיש עליו ב-
SplitToggleChip
, לשיפור הנגישות. (Ieed3a) - ההגדרה 'הפחתת תנועה' משביתה עכשיו את האפקט של הבהוב ואת התנועה של מחיקה של סמלי placeholder. (I91046)
- עכשיו אפשר ללחוץ לחיצות חוזרות על
Stepper
ו-InlineSlider
לחיצה ארוכה כדי להגדיל או להקטין במהירות את הערך שלStepper
ו-InlineSlider
על ידי לחיצה ארוכה על הלחצנים + או -. (I27359)
גרסה 1.3.0-alpha01
21 ביוני 2023
androidx.wear.compose:compose-*:1.3.0-alpha01
משוחרר. גרסה 1.3.0-alpha01 כוללת את ההוספות האלה.
תיקוני באגים
- כפי שהודענו ב-
1.2.0-alpha07
וב-1.2.0-alpha10
, אנחנו משנים עכשיו אתDefaultTextStyle
כדי להשבית את הוספת הריפוד לגופן, כדי לשמור על עקביות בפלטפורמת Android. כך נוכל לטפל במקרים מסוימים של חיתוך טקסט בגופנים גדולים, ויכול להיות שהשינוי ישפיע גם על פריסות המסך. לכן, צריך לעדכן את הבדיקות של צילומי המסך. לדוגמה, כאן רואים קטע טקסט חתוך (Ic6a86)

- הוא לא מופיע יותר כשהוספת רווחים מסביב לגופן מושבתת:

- עדכנו את
wear.compose.foundation
כך שיהיה תלוי ב-API שלwear.compose.material
(I72004, b/285404743) - תיקנו באג ב-
SwipeToDismissBox
. מפתחות הרקע והתוכן מועברים עכשיו לבלוק remember, כדי שייווצרו משתני אופן פעולה חדשים כשהתוכן או הרקע ישתנו. (Ib876c, b/280392104) - עדכנו את
TimeText
כך שישתמש באזור הזמן בבחירת הפורמט של השעה – 12 או 24 שעות. (If4a3d) - תיקנו חוסר עקביות בפרמטרים שמוגדרים כברירת מחדל ב-
SwipeToDismissBox
contentScrimColor
. (I2d70f) - שיפרנו את הטיפול בתנועה ב-
SwipeToReveal
. (I28fb7)
בעיות מוכרות
- תמיכה בגדלי גופן שמוגדרים על ידי המשתמשים היא דרישה לנגישות. אנחנו יודעים שצ'יפים עם כמה שורות עלולים לגרום לחיתוך טקסט כשהם מוצגים עם גופנים גדולים, לכן נעדכן את הצ'יפ בגרסה מוקדמת של גרסת האלפא 1.3 כדי לבצע התאמות לגובה במקרים כאלה.
גרסה 1.2
גרסה 1.2.1
18 באוקטובר 2023
androidx.wear.compose:compose-*:1.2.1
משוחרר. גרסה 1.2.1 מכילה את השמירות האלה.
תיקוני באגים
- תוקן באג שבו
PositionIndicator
נעלם באופן שגוי. (7a167f)
גרסה 1.2.0
9 באוגוסט 2023
androidx.wear.compose:compose-*:1.2.0
משוחרר. גרסה 1.2.0 מכילה את ההוספות האלה.
שינויים חשובים מאז גרסה 1.1.0
- גרסה יציבה של Compose for Wear OS 1.2.0 (מידע נוסף)
- רשימת השינויים העיקריים ב-Wear Compose 1.2 מפורטת בנתוני הגרסה של (Compose for Wear OS 1.2 Beta01)
גרסה 1.2.0-rc01
26 ביולי 2023
androidx.wear.compose:compose-*:1.2.0-rc01
משוחרר. גרסה 1.2.0-rc01 כוללת את ההוספות האלה.
תיקוני באגים
- סיימנו את הגדרת הפרופילים הבסיסיים לגרסה 1.2 (Id5740)
גרסה 1.2.0-beta02
7 ביוני 2023
androidx.wear.compose:compose-*:1.2.0-beta02
משוחרר. גרסה 1.2.0-beta02 מכילה את ההצהרות האלה.
תכונות חדשות
- הוספנו את המשתנה הניסיוני החדש
LocalReduceMotion
CompositionLocal
, שמשבית את שינוי הגודל וההדהדה ב-ScalingLazyColumn
. (I58024)
תיקוני באגים
- עדכנו את הפרופילים הבסיסיים של ספריות החומרים והבסיס של Wear Compose(I4725d)
- תיקנו חוסר עקביות בערכים שמוגדרים כברירת מחדל לפרמטר
SwipeToDismissBox
contentScrimColor
(I2d70f) - תיקנו את ערך ברירת המחדל של
DefaultTextStyle
שמשמש להגדרהIncludeFontPadding
(I737ed)
גרסה 1.2.0-beta01
24 במאי 2023
androidx.wear.compose:compose-*:1.2.0-beta01
משוחרר. גרסה 1.2.0-beta01 כוללת את ההצהרות האלה.
מה חדש ב-Compose for Wear OS 1.2
הגרסה 1.2-beta01 של Compose for Wear OS מציינת שהגרסה הזו של הספרייה כוללת את כל התכונות, וממשק ה-API נעול (למעט במקרים שבהם הוא מסומן כניסיוני). Wear Compose 1.2 כולל את הפונקציונליות החדשה הבאה:
expandableItem
ו-expandableItems
הם שני רכיבים חדשים שלFoundation
שתומכים בהרחבת פריטים בתוךScalingLazyColumn
. משתמשים ב-expandableItem
לפריט יחיד שניתן להרחבה, כמו טקסט שבו מספר השורות. משתמשים ב-expandableItems
לקבוצה של פריטים שניתן להרחיב, וב-expandableButton
כדי לפשט את היצירה של כפתור שנכנס למצב מקופל אחרי שהתוכן מורחב.HierarchicalFocusCoordinator
– הרכיב הניסיוני הזה מאפשר לסמן עצי משנה של הקומפוזיציה כפעילים או כמושבתים.Picker
– ה-API כולל עכשיו אתuserScrollEnabled
כדי לקבוע אם הבורר פעיל כשהמשתמש גולל.PickerGroup
– רכיב חדש שניתן לשילוב לטיפול בכמה בוררי בחירה יחד. הוא מטפל בפוקוס בין הבוררים באמצעות ה-APIHierarchicalFocusCoordinator
ומאפשר מרכוז אוטומטי של הפריטים בבורר.Placeholder
– ביצענו עדכונים באנימציות של הבהוב ו'מחיקה'. אפקט המחיקה מופעל עכשיו באופן מיידי כשהתוכן מוכן.ScalingLazyColumn
– העברנו אתScalingLazyColumn
ואת הכיתות המשויכות מ-androidx.wear.compose.material.ScalingLazyColumn
אלandroidx.wear.compose.foundation.lazy.ScalingLazyColumn
. עליך לעדכן את המערכת לגרסהFoundation.Lazy
.SwipeToReveal
– הוספנו תמיכה ניסיונית באפשרות להחליק כדי לחשוף, כדרך לגשת לפעולות משניות, כתוספת לדפוס הקיים של 'לחיצה ארוכה'.Stepper
– עכשיו יש לו עומס יתר עם פרמטרenableRangeSemantics
נוסף כדי להקל על השבתת הסמנטיקה של טווח ברירת המחדל.Previews
– הוספנו את ההערות המותאמות אישית הבאות כדי להציג תצוגה מקדימה של רכיבי Composable במסכים של Wear:WearPreviewSmallRound
תצוגה מקדימה של רכיב Composable במכשיר עגול קטן,WearPreviewLargeRound
תצוגה מקדימה של רכיב Composable במכשיר עגול גדול,WearPreviewSquare
תצוגה מקדימה של רכיב Composable במכשיר מרובע. בנוסף, התגים הבאים והערות עם תצוגות מקדימות מרובות:WearPreviewFontScales
מציג תצוגה מקדימה של הרכיבים הניתנים לשילוב במכשיר Wear עם כמה גדלי גופן, ואילוWearPreviewDevices
מציג תצוגה מקדימה של הרכיבים הניתנים לשילוב במכשירי Wear שונים.- הוספנו ל-Wear Compose את
DefaultTextStyle
, שמגדיר את ברירת המחדל של נכסPlatformTextStyle.includeFontPadding
כ-true (זו ההגדרה הנוכחית). כך נוכל לסנכרן את השבתת הרווח מסביב לגופן כברירת מחדל עם ספריות Compose בגרסה מוקדמת של 1.3 alpha – מידע נוסף זמין במאמר 1.2.0-alpha10.
תכונות חדשות
- הוספנו תמיכה ניסיונית להשבתת התאמה לעיצוב ואנימציה של דהייה כשההגדרה reduce_motion מופעלת. (I58024)
תיקוני באגים
- מסמכי עזרה משופרים ל-
angularWidthDp
ב-CurvedSize.kt
(Iab75c) SwipeDismissableNavHost
מתעד עכשיו אזהרה עם סיבות אפשריות ל-backstack ריק. המטרה היא למנוע קריסות לא צפויות שנגרמות בגללIllegalArgumentException
שהושלך כשסטאק החזרה לאחור היה ריק. (I04a81, b/277700155)
גרסה 1.2.0-alpha10
10 במאי 2023
androidx.wear.compose:compose-*:1.2.0-alpha10
משוחרר. גרסה 1.2.0-alpha10 מכילה את ההצהרות האלה.
תכונות חדשות
- הוספנו תמיכה ב'החלקה כדי לחשוף', כדרך לגשת לפעולות משניות. התבנית הזו משלימה את התבנית של 'לחיצה ארוכה', שהיא הדרך הקיימת שבה משתמש יכול לחשוף פעולות משניות (שונות). (I60862)
שינויים ב-API
- הוספנו את
RevealScope
לרכיבי פעולה ב-SwipeToReveal
, שמאפשר גישה להיסט שבו נחשפות פעולות נוספות. (I3fd56)
תיקוני באגים
- תוקנה בעיה שבה
ScalingLazyColumn
תקוע ב-Wear API 33 אחרי תנועה מהירה (Ic4599) - ביצענו כמה שיפורים בביצועים של
PositionIndicator
כדי לצמצם את התנודות. (I35e92) - תיקנו באג בצ'יפ וב-
CompactChip
, שבו התפקיד הסמנטי לא הוגדר יותר כ-Role.Button
. (I93f91, b/277326264)
בעיות מוכרות
זיהינו באג ב-Android Studio שגורם לכשל ברינדור של תצוגה מקדימה כשמוסיפים הערות באמצעות @WearPreviewDevices ו-@WearPreviewFontScales. תיקון הבעיה מתוכנן להופיע בקרוב. לתשומת ליבכם: ההערות האחרות לתצוגה המקדימה של Wear פועלות כמצופה ב-Android Studio Giraffe 2022.3.1 ואילך.
בגרסה 1.2.0-alpha07 הוספנו את DefaultTextStyle ל-Compose ב-Wear, תוך שמירה על הערך הקיים של PlatformTextStyle.includeFontPadding כ-true. לרקע, אפשר לעיין במאמר תיקון של הרווח מסביב לגופן ב-Compose. כדי לשמור על עקביות בפלטפורמת Android, נשנה את DefaultTextStyle כדי להשבית את הוספת הריפוד לגופן בגרסה מוקדמת של גרסת האלפא 1.3. כך נוכל לטפל במקרים מסוימים של חיתוך טקסט בגדלי גופן גדולים, ויכול להיות שהשינוי ישפיע גם על פריסות המסך. לכן, צריך לעדכן את הבדיקות של צילומי המסך. לדוגמה, בגדלי גופן גדולים, הטקסט נחתך כך:

- הוא לא מופיע יותר כשהוספת רווחים מסביב לגופן מושבתת:

עכשיו אפשר להשתמש בהגדרה החדשה על ידי שינוי של הגופנים בעיצוב – קוד לדוגמה.
גרסה 1.2.0-alpha09
19 באפריל 2023
androidx.wear.compose:compose-*:1.2.0-alpha09
משוחרר. גרסה 1.2.0-alpha09 מכילה את ההצהרות האלה.
שינויים ב-API
- הוספת
angularSizeDp
ל-CurvedModifier
API להגדרת רוחב זווית ב-DP (I89a52)
תיקוני באגים
- תיקנו בעיות נגישות בדמואים של בורר הזמנים(Id0eb7)
גרסה 1.2.0-alpha08
5 באפריל 2023
androidx.wear.compose:compose-*:1.2.0-alpha08
משוחרר. גרסה 1.2.0-alpha08 מכילה את ההוספות האלה.
שינויים ב-API
- שינינו את השם של
ExpandableItemsState
ל-ExpandableState
. (If85ea) - הוספנו את
expandableButton
כדי לפשט את היצירה של לחצן שנכנס למצב מקופל כשהתוכן מורחב, ועדכנו את הדוגמאות לרכיבים שניתן להרחיב. (Iae309)
תיקוני באגים
- דוגמאות משופרות שניתן להרחיב כדי להציג אפשרויות נוספות. שינוי האנימציה של
expandableItem
כדי שהתוכן שלה יישאר במרכז במהלך האנימציה. (I2f637) - עדכנו את
ToggleControls
כדי למנוע קומפוזיציות מחדש מיותרות כשמפעילים אנימציה של צבעים באופן ידני באמצעות State. (I5d319)
גרסה 1.2.0-alpha07
22 במרץ 2023
androidx.wear.compose:compose-*:1.2.0-alpha07
משוחרר. גרסה 1.2.0-alpha07 מכילה את ההצהרות האלה.
שינויים ב-API
- העברנו את הרכיבים של הפריטים הנפתחים (נוספו בגרסה 1.2.0-alpha06) מהחומרה ליסודות, כי לא הייתה להם הפניה משמעותית ל-
MaterialTheme
. (Ib0525)
תיקוני באגים
- תיקנו קריסה שהתרחשה במסך שבו נעשה שימוש ב-
PickerGroup
, על ידי הבטחה ש-PickerGroup
מטפל בצורה נכונה בפוקוס כשאין בורר שמקבל את הפוקוס. הוספנו גם תמיכה בגלילה של RSB בדמואים של Picker. (If8c19) - שיפרנו את מעברי הדיאלוג – מעכשיו המעבר של תחילת הסרטון חלק יותר כדי להתאים למעבר של סוף הסרטון. (Ib5af9)
- הוספנו ל-Wear Compose את
DefaultTextStyle
, שמגדיר את ברירת המחדל של נכסPlatformTextStyle.includeFontPadding
כ-true (זו ההגדרה הנוכחית). כך נוכל לסנכרן את השבתת הרווח מסביב לגופן כברירת מחדל עם ספריות ה-Compose בעתיד. לרקע, אפשר לעיין במאמר תיקון הרווח מסביב לגופן ב-Compose. (I2aee8) - החזרה לאחור של יחסי תלות בתצוגה המקדימה של
UpsideDownCake
באמצעות activity-compose, שחסמו את פרסום האפליקציות בחנות Google Play. (I6443d)
גרסה 1.2.0-alpha06
8 במרץ 2023
androidx.wear.compose:compose-*:1.2.0-alpha06
משוחרר. גרסה 1.2.0-alpha06 מכילה את ההוספות האלה.
שינויים ב-API
- מוסיפים את הרכיב
CurvedBox
, שמציב רכיבים אחד על גבי השני בעולם המעוקל. (I29200) - נוספו פריטים שניתן להרחיב – שני רכיבים חדשים שתומכים בקבוצה של פריטים שניתן להרחיב ב-
ScalingLazyColumn
, או בפריט יחיד שניתן להרחיב, כמו טקסט שבו מספר השורות מתרחב. (I95dd5) - הוספנו את ההערות המותאמות אישית הבאות כדי להציג תצוגה מקדימה של קומפוזיציות במסכים של Wear:
WearPreviewSmallRound
מציגה תצוגה מקדימה של הקומפוזיציה במכשיר קטן עגול,WearPreviewLargeRound
מציגה תצוגה מקדימה של הקומפוזיציה במכשיר גדול עגול ו-WearPreviewSquare
מציגה תצוגה מקדימה של הקומפוזיציה במכשיר מרובע. בנוסף, התגים הבאים והערות עם תצוגות מקדימות מרובות:WearPreviewFontScales
מציג תצוגה מקדימה של הרכיבים הניתנים לשילוב במכשיר Wear עם כמה גדלי גופן, ואילוWearPreviewDevices
מציג תצוגה מקדימה של הרכיבים הניתנים לשילוב במכשירי Wear שונים. כדי להשתמש בתצוגות המקדימות האלה, צריך להשתמש ב-Android Studio בגרסה האחרונה (Giraffe Canary 6) ואילך. חשוב לזכור: אם ההערות האלה לא מתאימות למטרה שלכם, עדיין תוכלו להשתמש בתצוגה המקדימה, והיא תומכת בהתאמות אישיות נוספות באמצעות פרמטרים. (I397ff) - סימנו את
HierarchicalFocusCoordinator
כתכונה ניסיונית, אבל היא נחשבת כמועמדת להעברה לספריות הליבה של compose, בגלל השימושים הרבים שלה. (I3a768)
תיקוני באגים
- תוקן באג ב-
HierarchicalFocusCoordinator
: כשה-lambda שהוענק לפרמטרfocusEnabled
משתנה, אנחנו משתמשים עכשיו ב-lambda החדש בצורה נכונה. (Icb353) - עדכנו את צבע ברירת המחדל של תוכן מושבת ל'רקע' כשמשתמשים בצבעים ראשיים כרקע ב-
Button
, ב-CompactButton
, ב-Chip
, ב-CompactChip
וב-ToggleButton
. כך אפשר לשפר את הניגודיות לשיפור הנגישות. (I527cc)
גרסה 1.2.0-alpha05
22 בפברואר 2023
androidx.wear.compose:compose-*:1.2.0-alpha05
משוחרר. גרסה 1.2.0-alpha05 מכילה את ההצהרות האלה.
שינויים ב-API
- עדכנו את ממשק ה-API של
PickerGroup
כדי לאפשר להעביר את אילוצי המינימום לרכיב הניתן לקיבוץ, אם רוצים. כשהיא מוגדרת כ-True, האילוצים המינימליים שהועברו מהרכיב הקומפוזיציבי ההורה יהיו מותרים ב-PickerGroup
. אם הערך של הפרמטר מוגדר כ-false,PickerGroup
יאפס את האילוצים המינימליים. (I3e046) - הוספנו את
animateScrollToOption
ל-Picker API כדי לתמוך באנימציה פרוגרמטית לאפשרות ספציפית ב-Picker (I6fe67)
תיקוני באגים
- עדכנו את
HorizontalPageIndicator
כך שיתמוך בפריסות מימין לשמאל. (Ia4359) - נוספו בדיקות של צילומי מסך לפריסה מימין לשמאל ב-
HorizontalPageIndicator
(I6fbb8) - נוספו בדיקות נוספות ל-
SwipeDismissableNavHostTest
שמשתמשות ב-TestNavHostController
(I61d54)
גרסה 1.2.0-alpha04
8 בפברואר 2023
androidx.wear.compose:compose-*:1.2.0-alpha04
משוחרר. גרסה 1.2.0-alpha04 מכילה את ההוספות האלה.
תכונות חדשות
PickerGroup
לטיפול בכמה בוררי בחירה יחד באמצעות Focus API. הוא מטפל בהתמקדות בין הבוררים השונים, מאפשר מרכוז אוטומטי של הבוררים על סמך פרמטרים ומאפשר למפתחים לשנות את המיקוד בין הבוררים השונים תוך כדי טיפול באירועים מהקבוצה. במצב TalkBack, הלחצןPickerGroup
מטפל במיקוד של TalkBack על ידי העברת המיקוד לבורר שנבחר מהקבוצה. (I60840)
שינויים ב-API
- הוספנו עומס יתר ל-Stepper עם פרמטר
enableRangeSemantics
נוסף כדי להקל על השבתת הסמנטיקה של טווח ברירת המחדל (Ia61d4)
תיקוני באגים
- מתן אפשרות להטמיע את
ScalingLazyColumn
בדף עם גלילה אופקית (Iec3f8, b/266555016) - שיפור של מסמכי ה-kdocs של Stepper וניפוי של בדיקות
StepperTest
. (Ic118e) - עודכן יחסי התלות של
androidx.navigation
לגרסה 2.5.3 (If58ed)
גרסה 1.2.0-alpha03
25 בינואר 2023
androidx.wear.compose:compose-*:1.2.0-alpha03
משוחרר. גרסה 1.2.0-alpha03 כוללת את ההוספות האלה.
שינויים ב-API
- הענקנו את
ScalingLazyColumn
(ואת הכיתות המשויכות) מ-androidx.wear.compose.material.ScalingLazyColumn
ל-andrdoidx.wear.compose.foundation.lazy.ScalingLazyColumn
(כאן מוסבר איך עושים את זה). המיקום החדש הזה תואם יותר למיקום שלcompose.foundation.lazy.LazyColumn
והוא טבעי יותר כי הוא לא רכיב Material מוכתב. אנחנו מבצעים את השינוי הזה עכשיו לקראת השקת ספרייה חדשה של Material3, שעל היצירה שלה נעבוד במקביל לספריית Material הקיימת. (I060e7)
השינויים הבאים הם חלק מההעברה של ScalingLazyColumn
מ-Material ל-Foundation.Lazy
:
- ממשקי ה-API של
PositionIndicator
שמטרגטים את MaterialScalingLazyColumn
הוצאו משימוש – יש לעדכן ל-Foundation.Lazy ScalingLazyColumn
. בנוסף, השדהanchorType
נוסף ל-ScalingLazyListLayoutInfo
. (I29d95) ScalingLazyColumn
סומן כחומר שהוצא משימוש בחבילת Wear Compose Material (I16d34)- עדכנו את המשתנה
ScrollAway
כך שישתמש ב-ScalingLazyListState
מ-Wear ComposeFoundation.Lazy
, והוצאנו משימוש את עומס יתר שהשתמש ב-ScalingLazyListState
מ-Wear Compose Material. (Ifc42c) - עדכנו את ממשקי Dialog API כך שישתמשו ב-
ScalingLazyListState
מ-Foundation.Lazy
, והוצאנו משימוש את עומסי יתר שהשתמשו ב-MaterialScalingLazyListState
(Ic8960) - עדכנו את ממשקי ה-API של הבורר כך שישתמשו ב-
ScalingParams
מ-Foundation.Lazy
, והוצאנו משימוש את עומסי יתר שהשתמשו ב-MaterialScalingParams
. (Idc3d8)
תיקוני באגים
- תיקנו באג שגרם ליצירת קומפוזיציות מחדש מיותרות ב-
ScalingLazyListState.centerItemIndex
. לשם כך, וידאנו שהמערכת שולחת עדכונים רק כשהערך משתנה בפועל (Ia9f38) - שיפרנו את הביצועים של
SwipeToDismissBox
(I3933b) - נוספו בדיקות של מדדי ביצועים ל-
ScalingLazyColumn
ב-Wear Compose Foundation (Ie00f9) - עדכנו כמה שיטות פנימיות של כיתות
ScalingLazyColumn
ב-Material כך שישתמשו בדומות שלהן מ-Foundation.Lazy
(I38aab) - תיקנו כמה בעיות בבדיקות של Picker והוספנו בדיקות נוספות לבדיקת גלילה עם אופסט (I6ac34)
- העברנו את הדגמות השילוב של
ScalingLazyColumn
כך שייסמכו עלFoundation.Lazy
במקום על MaterialScalingLazyColumn
(Ic6caa) - הוספנו פרמטרים אופציונליים של
fromDate/toDate
לדמו שלDatePicker
(I961cd)
גרסה 1.2.0-alpha02
11 בינואר 2023
androidx.wear.compose:compose-*:1.2.0-alpha02
משוחרר. גרסה 1.2.0-alpha02 מכילה את ההוספות האלה.
שינויים ב-API
- עכשיו, בבדיקות ממשק המשתמש של Android Compose יתבצעו מעברים של פריסה לכל פריים בזמן ביצוע הפריים כדי להגיע למצב חוסר פעילות (למשל, באמצעות
waitForIdle
). הדבר עשוי להשפיע על בדיקות שמבצעות טענת נכוֹנוּת (assertion) על פריימים נפרדים של אנימציות פריסה. (I8ea08, b/222093277) - הפרמטר
minLines
מתווסף ל-Wear Text כדי לשמור על התנהגות עקבית עםBasicText
(I24874) CompactChipTapTargetPadding
הפך לציבורי כדי שיופיע במסמכי העזרה (If1e70, b/234119038)
תיקוני באגים
- השבתת גרסאות build לפלטפורמות מרובות עבור חבילות
wear.compose
(Iad3d7) - תיקון של kdocs עבור
scrollToOption
(I6f9a0) PlaceholderState.rememberPlaceholderState()
עודכן כך שישתמש ב-rememberUpdatedState
כדי שהמצב יתעדכן אם פונקציית ה-lambda שלonContentReady
. (I02635, b/260343754)- תיקנו בעיה של רעידות בטקסט שזוהתה ברכיב
Picker
באמצעות שימוש באסטרטגיית הקומפוזיציה החדשה שנוספה ל-Modifier.graphicsLayer
. (I99302) - תיקנו באג שגרם לרטט בהדגמה של
DatePicker
(I660bd) - שיפרנו את הנגישות של הדגמות הבורר לשעה ולתאריך עם חלוקה ל-12 שעות (I05e12)
- עדכנו את הדגמות של הבוררים לבחירת תאריך ושעה, כך שהבוררים לא יושפעו משינויים ב-RSB כשהם לא מסומנים (I4aecb)
גרסה 1.2.0-alpha01
7 בדצמבר 2022
androidx.wear.compose:compose-*:1.2.0-alpha01
משוחרר. גרסה 1.2.0-alpha01 מכילה את ההוספות האלה.
תכונות חדשות
- עדכנו את הפונקציונליות הניסיונית של Placeholder כך שהאפקט 'מחיקה' יוחל באופן מיידי כשהתוכן יהיה מוכן, במקום להמתין להתחלת לולאת האנימציה הבאה. בנוסף, ביצענו כמה עדכונים באנימציות של הבהוב והמחיקה. (I5a7f4)
שינויים ב-API
- הוספנו רכיב
HierarchicalFocusCoordinator
שאפשר לשלב כדי לסמן עצי משנה של ההרכב כפעילים או כמושבתים.(I827cb) - הוספנו נכס חדש כדי לשנות את התפקיד הסמנטי של
ToggleButton
. (I67132) - עדכנו את
TimeTextDefaults.TimeFormat12Hours
כדי להסיר את AM/PM ב-TimeText
. הפעולה הזו תשנה את ערך ברירת המחדל של הפרמטריםtimeSource
ב-API שלTimeText
. (I1eb7f) - הרחבנו את Picker API כדי לשפר את הנגישות במסכים עם בורר רב-אפשרויות. יש מאפיין חדש,
userScrollEnabled
, שקובע אם הבורר פעיל בזמן שהמשתמש גולל. (I3c3aa)
תיקוני באגים
- שינינו את רוחב ההיקף שמוגדר כברירת מחדל ל-
OutlinedButton/OutlinedCompactButton
מ-2dp ל-1dp, כדי להתאים למפרטי חוויית המשתמש הסופיים. (Icf84d) - כדי לצמצם את ההשפעה של הפריט הראשון שנוסף ל-
ScalingLazyColumn
ריק שנראה כאילו הוא גולש למיקום שלו, הוספנוautoCentering topPadding
משוער כשהתוכן ריק. השינוי הזה מחשב את כמות הרווח העליון הנחוץ, בהנחה שפריט ראשוני בגובה 0.dp. עבורScalingLazyListAnchorType.ItemStart
, המערכת תחשב את המרווח הפנימי העליון הנכון. עבורScalingLazyListAnchorType.ItemCenter
, החישוב יהיה שגוי כי צריך את גובה הפריטים כדי לקבוע את הגודל הנכון של התוכן, וכתוצאה מכך תהיה גלילה קטנה למקום על סמך הגובה האמיתי של הפריטים.(I239a4) - עדכנו את שכבת הרקע שהוחלו על האנימציה של
SwipeToDismiss
כך שתתאים לפלטפורמת Wear. (I9003e) - תיקנו את הטיפול של
PositionIndicator
ב-LazyListState
וב-ScalingLazyListState
לפריטי רשימה בגודל 0, כדי למנוע שגיאות של חלוקה באפס.(Ic28dd)
גרסה 1.1
גרסה 1.1.2
8 בפברואר 2023
התכונות androidx.wear.compose:compose-foundation:1.1.2
, androidx.wear.compose:compose-material:1.1.2
וגם androidx.wear.compose:compose-navigation:1.1.2
משוחררות. גרסה 1.1.2 כוללת את השמירות האלה.
תיקוני באגים
- תיקנו באג שגרם ליצירת קומפוזיציות מחדש מיותרות ב-
ScalingLazyListState.centerItemIndex
. לשם כך, וידאנו שהמערכת שולחת עדכונים רק כשהערך משתנה בפועל (Ia9f38)
גרסה 1.1.1
11 בינואר 2023
התכונות androidx.wear.compose:compose-foundation:1.1.1
, androidx.wear.compose:compose-material:1.1.1
וגם androidx.wear.compose:compose-navigation:1.1.1
משוחררות. גרסה 1.1.1 מכילה את השמירות האלה.
תיקוני באגים
PlaceholderState.rememberPlaceholderState()
עודכן כך שישתמש ב-rememberUpdatedState
כדי שהמצב יתעדכן אם פונקציית ה-lambda שלonContentReady
. (I02635, b/260343754)
גרסה 1.1.0
7 בדצמבר 2022
התכונות androidx.wear.compose:compose-foundation:1.1.0
, androidx.wear.compose:compose-material:1.1.0
וגם androidx.wear.compose:compose-navigation:1.1.0
משוחררות. גרסה 1.1.0 כוללת את ההצהרות האלה על ביצוע שינויים (commits).
שינויים חשובים מאז גרסה 1.0.0
- גרסה יציבה של Compose for Wear OS 1.1.0 (מידע נוסף).
- רשימת השינויים העיקריים ב-Wear Compose 1.1 מפורטת בנתוני הגרסה של Compose for Wear OS 1.1 Beta01.
תכונות חדשות
- עדכנו את הפונקציונליות הניסיונית של Placeholder כך שהאפקט 'מחיקה' יוחל באופן מיידי כשהתוכן יהיה מוכן, במקום להמתין להתחלת לולאת האנימציה הבאה. בנוסף, ביצענו כמה עדכונים באנימציות של הבהוב והמחיקה. (I5a7f4)
תיקוני באגים
- שינינו את רוחב ההיקף שמוגדר כברירת מחדל ל-
OutlinedButton/OutlinedCompactButton
מ-2dp ל-1dp, כדי להתאים למפרטי חוויית המשתמש הסופיים. (Icf84d) - כדי לצמצם את ההשפעה של הפריט הראשון שנוסף ל-
ScalingLazyColumn
ריק שנראה כאילו הוא גולש למיקום שלו, הוספנוautoCentering topPadding
משוער כשהתוכן ריק. השינוי הזה מחשב את כמות הרווח העליון הנחוץ, בהנחה שפריט ראשוני בגובה 0.dp. עבורScalingLazyListAnchorType.ItemStart
, המערכת תחשב את המרווח הפנימי העליון הנכון. עבורScalingLazyListAnchorType.ItemCenter
, החישוב יהיה שגוי כי צריך את גובה הפריטים כדי לקבוע את הגודל הנכון של התוכן, וכתוצאה מכך תהיה גלילה קטנה למקום על סמך הגובה האמיתי של הפריטים.(I239a4) - עדכנו את שכבת הרקע שחלה על האנימציה של
SwipeToDismiss
כך שתתאים לפלטפורמת Wear. (I9003e) - תיקנו את הטיפול של
PositionIndicator
ב-LazyListState
וב-ScalingLazyListState
לפריטי רשימה בגודל 0, כדי למנוע שגיאות של חלוקה באפס.(Ic28dd)
גרסה 1.1.0-rc01
9 בנובמבר 2022
התכונות androidx.wear.compose:compose-foundation:1.1.0-rc01
, androidx.wear.compose:compose-material:1.1.0-rc01
וגם androidx.wear.compose:compose-navigation:1.1.0-rc01
משוחררות. גרסה 1.1.0-rc01 כוללת את השמירות האלה.
תיקוני באגים
- הוספנו כללי פרופיל בסיסיים עבור
Placeholders
, ScrollAway
, RadioButton
, Switch
, Checkbox
, OutlinedButton
, OutlinedCompactButton
, OutlinedChip
ו-OutlinedCompactChip
. (I8249c) - תיקנו באג ב-
Modifier.scrollAway
, כך שאם הערך שצוין בשדהitemIndex
לא חוקי (לדוגמה, אם אינדקס הפריט הזה לא נמצא בטווח), הערך שלTimeText
עדיין יוצג. (I2137a) - עדכנו את האנימציה של
SwipeToDismissBox
כך שתתאים להטמעה בפלטפורמה. אחרי אנימציית הלחיצה הראשונית, המסך מחליק ימינה אחרי שהסגירה מופעלת. (I41d34) - כחלק מהאופטימיזציה, עדכנו את
Modifier.scrollAway
כך שיקריא רק אתscrollState
בתוך בלוק המדידה, כדי למנוע יצירת מחדש של המשנה אחרי כל מדידה מחדש. (I4c6f1) - הוספנו מסמך ודוגמה למעקב אחרי מיקומי תוכן כדי להראות את הסדר הנכון של
Modifier.placeholder
ו-Modifier.placeholderShimmer
כשהם חלים על אותו רכיב מורכב. (Ie96f4, b/256583229) - שינינו את רוחב ההיקף שמוגדר כברירת מחדל ל-
OutlinedCompactChip/OutlinedChip
מ-2dp ל-1dp, כדי להתאים למפרטי חוויית המשתמש הסופיים. (Ib3d8e) - תיקנו באג ב-
rememberPickerState
שבו לא נשמרו קלטות מעודכנות, כך שרכיבי ה-Composable לא התעדכנו אחרי שינויים בקלטות. (I49ff6, b/255323197) - ביצענו כמה עדכונים בממשק המשתמש של סמלי ה-placeholder: 1) שינוי שיפוע הזוהר לגודל של פי 1.5 מגודל המסך, 2) הוספת עיכוב (cubic bezier) להתקדמות של הזוהר ו-3) האצת האנימציה של המחיקה (250 אלפיות השנייה). (Id29c1)
- תיקנו באג בממשק המשתמש של אפקט המחיקה של placeholder, שבו הרקעים של הצ'יפים והכרטיסים נמחקו קצת מוקדם מדי כי לא נלקח בחשבון המיקום של הרכיב במסך. (I2c7cb)
- עדכנו את ציור הרקע של placeholder כך שימזג צבעים במקום להציב אותם בשכבות, במידת האפשר. המטרה היא לצמצם את הסיכון ששילוב אלפא של השכבות השונות שנחתכו יאפשר לצבעים שמתחת לעבור לקצוות של הרקע של placeholder. (I2ea26)
- תיקנו את החישוב של
ScalingLazyListState.centerItemIndex/centerItemOffset
כך שאם שני פריטים נמצאים משני צידי קו המרכז של אזור התצוגה, הפריט הקרוב ביותר ייחשב כ-centerItem
. (I30709, b/254257769) - תיקנו באג ב-
ScalingLazyListState.layoutInfo.visibleItemsInfo
שדיווח על סטיות שגויות במהלך האתחול שלScalingLazyColumn
. עכשיו תוחזר רשימה ריקה עד שכל הפריטים ברשימה יהיו גלויים ועם ההיסטים הנכונים. בדיקה שלScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty()
תאשר שההפעלה שלScalingLazyColumn
הושלמה והפריטים גלויים. (I3a3b8)
גרסה 1.1.0-beta01
24 באוקטובר 2022
התכונות androidx.wear.compose:compose-foundation:1.1.0-beta01
, androidx.wear.compose:compose-material:1.1.0-beta01
וגם androidx.wear.compose:compose-navigation:1.1.0-beta01
משוחררות. גרסה 1.1.0-beta01 כוללת את השמירות האלה.
מה חדש ב-Compose for Wear OS 1.1
בגרסה 1.1.0-beta01 של Compose for Wear OS צוין שהגרסה הזו של הספרייה כוללת את כל התכונות ושה-API נעול.
- הגרסה 1.1 של Wear Compose כוללת את הפונקציונליות החדשה הבאה:
- בורר – שיפורים בנגישות של הבורר, כך שאפשר לנווט במסכים עם כמה בוחרנים באמצעות קוראי מסך, ותיאור התוכן נגיש
- הפרמטר
contentDescription
של הבורר משמש עכשיו רק לאפשרות שנבחרה בבורר, והוא מקבל מחרוזת nullable (בקודם, היה צריך להעביר מיפוי מהאפשרות לתיאור התוכן, אבל המערכת השתמשה רק באפשרות שנבחרה). - עכשיו הפריטים בבורר תמיד מותאמים למרכז. תיקון באג שבו הגדרת
gradientRatio
לאפס גרמה לשינוי ההתאמה. Chip/ToggleChip
– עדכנו את מעברי הצבע שמוגדרים כברירת מחדל ב-Chip/ToggleChip
כדי שתואמים למפרט העדכני ביותר של חוויית המשתמש.ChipDefaults.gradientBackgroundChipColors
עודכן כך שיתחיל מ-50% מהצבע הראשי במקום מ-32.5%.Chip/ToggleChip
– נוספו עומסי יתר לשינוי הצורות של הצ'יפיםChip/Button/ToggleButton
– הוספנו סגנון חדש עם קווים חיצוניים לצ'יפים וללחצנים, ורכיבים מורכבים חדשים מסוגOutlinedChip
ו-OutlinedButton
שמציגיםChip/Button
שקוף עם גבול דק.- כרטיס – עדכנו את ברירת המחדל של ההדרגות בכרטיסים כדי שתתאים למפרט העדכני ביותר של חוויית המשתמש.
CardDefaults.cardBackgroundPainter
עודכן כך שיתחיל ב-30% מהצבע הראשי וייגמר ב-20% מ-onSurfaceVariant
(קודם היה 20% עד 10%onSurfaceVariant
).ToggleChip.toggleChipColors
משתנה מהדרגה לינארית של 75% שטח ל-32.5% צבע ראשי ל-0% שטח ל-50% צבע ראשי. Button/ToggleButton
– נוספו מאפיינים לשינוי צורות של לחצנים.- עיצוב – עדכנו כמה צבעים שמוגדרים כברירת מחדל ב-
MaterialTheme
כדי לשפר את הנגישות. לצבעים המקוריים לא הייתה ניגודיות מספקת, ולכן המשתמשים התקשו להבדיל בין הרקעים של הצ'יפים, הכרטיסים או הלחצנים לבין צבע הרקע של העיצוב. InlineSlider/Stepper
– נוספו תפקידים של לחצנים כדי ש-Talkback
יוכל לזהות אותם כלחצנים.- תמיכה –
PositionIndicator
ממוקם עכשיו בגודל ובמיקום שמתאימים לו. לדוגמה, אם מתווסף לו מידע סמנטי, עכשיו קורא המסך קורא את הגבולות הנכונים שלPositionIndicator
במסך. CurvedText/TimeText
– נוספה הפונקציהModifier.scrollAway
, שמגלגלת פריט אנכית אל תוך התצוגה או ממנה, על סמך מצב הגלילה (עם עומסי יתר לעבודה עםColumn
, LazyColumn
ו-ScalingLazyColumn
). בדרך כלל משתמשים ב-ScrollAway
כדי לגלולTimeText
מחוץ לתצוגה כשהמשתמש מתחיל לגלול רשימה של פריטים כלפי מעלה.CurvedText/TimeText
– נוספה תמיכה ב-fontFamily
, ב-fontStyle
וב-fontSynthesis
ב-CurvedTextStyle
, שניתן להשתמש בה ב-curvedText
וב-basicCurvedText
CurvedText/TimeText
– הוספתfontWeight
למבנה ה-constructor ולשיטת ההעתקה ב-CurvedTextStyle
ToggleControls
– נוספו פקדי החלפת מצב מונפשים שלCheckbox
, Switch
ו-RadioButton
לשימוש עםToggleChip
ו-SplitToggleChip
. אפשר להשתמש בהם במקום בסמלים הסטטיים שסופקו על ידיToggleChipDefaults
(switchIcon
, checkboxIcon
ו-radioIcon
).- placeholder – נוספה תמיכה ניסיונית בפלייסהולדרים. הוא כולל שלושה אפקטים חזותיים ייחודיים שנועדו לפעול יחד.
- ראשית, אפקט מברשת של מקום-עזר ברקע, שמשמשים בקונטיינרים כמו צ'יפ וכרטיסים כדי לצייר מעל הרקע הרגיל בזמן ההמתנה לטעינת התוכן.
- שנית, משתנה (
Modifier.placeholder()
) לציור ווידג'ט של placeholder בצורת אצטדיון מעל התוכן שנטען. - השלישית היא אפקט שינוי של שינוי הדרגתי או הבהוב (
Modifier.placeholderShimmer()
) שמצויר מעל שאר האפקטים כדי להצביע למשתמשים שאנחנו ממתינים לטעינה של הנתונים.- כל האפקטים האלה תוכננו כך שיתאימו זה לזה, ויתנו תחושה של הבהוב והיעלמות בצורה מתואמת.
- יחסי התלות של Core Compose עודכנו מ-1.2 ל-1.3
שינויים ב-API
- עכשיו אפשר לציין פרמטרים של גופן (
fontFamily
, fontWeight
, fontStyle
ו-fontSynthesis
) ישירות כפרמטרים שלcurvedText
(Idc422)
תיקוני באגים
curveText
ו-basicCurvedText
יפעלו עכשיו כמו שצריך עם TalkBack (יש להם צומת compose-ui בגודל ובמיקום מתאימים (אבל ריק) שמשויך אליהם, והטקסט משמש כתיאור התוכן) (I7af7c, b/210721259)- תיקון באג ב-
Picker
כש-PickerState.repeatedItems = false
כדי להוסיף הגדרה מפורשת של פרמטרים של מרכוז אוטומטי ב-ScalingLazyColumn
הפנימי של הבורר, כדי לוודא שאפשר לגלול את האפשרות הראשונה למרכז התצוגה. (I8a4d7)
גרסה 1.1.0-alpha07
5 באוקטובר 2022
התכונות androidx.wear.compose:compose-foundation:1.1.0-alpha07
, androidx.wear.compose:compose-material:1.1.0-alpha07
וגם androidx.wear.compose:compose-navigation:1.1.0-alpha07
משוחררות. גרסה 1.1.0-alpha07 מכילה את ההוספות האלה.
תכונות חדשות
- הוספנו תמיכה ניסיונית בפלייסהולדרים. הוא כולל שלושה אפקטים חזותיים ייחודיים שנועדו לפעול יחד. ראשית, אפקט מברשת של מקום-עזר ברקע, שמשמשים בקונטיינרים כמו צ'יפ וכרטיסים כדי לצייר מעל הרקע הרגיל בזמן ההמתנה לטעינת התוכן. שנית, משתנה (
Modifier.placeholder()
) לציור ווידג'ט של placeholder בצורת אצטדיון מעל התוכן שנטען. השלישית היא אפקט שינוי של שינוי הדרגתי או הבהוב (Modifier.placeholderShimmer()
) שמצויר מעל שאר האפקטים כדי להצביע למשתמשים שאנחנו ממתינים לטעינה של הנתונים. כל האפקטים האלה תוכננו כך שיתאימו זה לזה, ויתנו תחושה של הבהוב והיעלמות בצורה מתואמת. (I3c339)
שינויים ב-API
- הוספנו תמיכה ב-
fontWeight
, ב-fontFamily
, ב-fontStyle
וב-fontSynthesis
ב-CurvedTextStyle
, שניתן להשתמש בה ב-curvedText
וב-basicCurvedText
. אפשר להשתמש בפרמטר הזה כדי לציין את הגופן והסגנון שישמשו בטקסט המעוקל.(Iaa1a8),(I72759) - פרמטר ההיסט של
Modifier.scrollAway
עודכן ל-Dp כדי לשמור על עקביות עםModifier.offset
(קודם הוא היה בפיקסלים). בנוסף, הקוד עבר עיבוד מחדש כ-LayoutModifier
לצורך יעילות. (I9f94b) - במסגרת ממשק ה-API החדש של אמצעי הבקרה למצב מצב, שינינו את השם של
RadioButton’s circleColor
ל-ringColor
. (I28fa9) - הוספנו מתגים מונפשים של
Checkbox
, Switch
ו-RadioButton
לשימוש עםToggleChip
ו-SplitToggleChip
. אפשר להשתמש בהם במקום בסמלים הסטטיים שסופקו על ידיToggleChipDefaults
(switchIcon
, checkboxIcon
ו-radioIcon
). (I8a8c4)
גרסה 1.1.0-alpha06
21 בספטמבר 2022
התכונות androidx.wear.compose:compose-foundation:1.1.0-alpha06
, androidx.wear.compose:compose-material:1.1.0-alpha06
וגם androidx.wear.compose:compose-navigation:1.1.0-alpha06
משוחררות. גרסה 1.1.0-alpha06 מכילה את ההוספות האלה.
תכונות חדשות
- הוספנו את
Modifier.scrollAway
, שמגלגלת פריט אנכית לתצוגה או ממנה, על סמך מצב הגלילה (עם עומסי יתר לעבודה עםColumn
, LazyColumn
ו-ScalingLazyColumn
). בדרך כלל משתמשים ב-ScrollAway
כדי לגלולTimeText
מחוץ לתצוגה כשהמשתמש מתחיל לגלול רשימה של פריטים למעלה. (I61766)
תיקוני באגים
- עכשיו ה-
PositionIndicator
ממוקם בגודל המתאים, כך שהוא תופס רק את המרחב הנדרש. לדוגמה, אם מתווסף לו מידע סמנטי, עכשיו קורא המסך קורא את הגבולות הנכונים שלPositionIndicator
במסך. (Ie6106, b/244409133)
גרסה 1.1.0-alpha05
7 בספטמבר 2022
התכונות androidx.wear.compose:compose-foundation:1.1.0-alpha05
, androidx.wear.compose:compose-material:1.1.0-alpha05
וגם androidx.wear.compose:compose-navigation:1.1.0-alpha05
משוחררות. גרסה 1.1.0-alpha05 מכילה את ההוספות האלה.
תיקוני באגים
- הוספנו תפקידים של לחצנים ל-
InlineSlider
ול-Stepper
כדי ש-Talkback יוכל לזהות אותם כלחצנים. (Icb46c, b/244260275) - תיקנו את סדר ה-Z של מיקום וסמלי הדפים ב-Scaffold. מעכשיו, הסמנים יופיעו מעל לוויניאט, כך שהם לא יהיו מוסתרים על ידו אם הוא יופיע. (Ib988f, b/244207528)
גרסה 1.1.0-alpha04
24 באוגוסט 2022
התכונות androidx.wear.compose:compose-foundation:1.1.0-alpha04
, androidx.wear.compose:compose-material:1.1.0-alpha04
וגם androidx.wear.compose:compose-navigation:1.1.0-alpha04
משוחררות. גרסה 1.1.0-alpha04 מכילה את ההוספות האלה.
שינויים ב-API
- עדכנו כמה מצבירות ברירת המחדל של MaterialTheme כדי לשפר את הנגישות. לצבעים המקוריים לא הייתה ניגודיות מספקת, ולכן המשתמשים התקשו להבדיל בין הרקעים של הצ'יפים, הכרטיסים והלחצנים לבין צבע הרקע של העיצוב. הצבעים המעודכנים הם surface(0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), onSecondary(0xFF202124->0xFF303133), primaryVariant(0xFF669DF6->0xFF8AB4F8) ו-onError(0xFF202124->0xFF000000). השינויים בצבעים, למרות שהם עדינים יחסית, עשויים להשפיע על בדיקות צילומי המסך הקיימות. (81ab09)
תיקוני באגים
- תיקון באג לוגי ב-
ScalingLazyColumn
שעלול לגרום לכך שרשימות עם מספר קטן (בדרך כלל 2) של פריטים לא משלימים את האינטליקציה, וכתוצאה מכך הן שקופות. (504347)
גרסה 1.1.0-alpha03
10 באוגוסט 2022
התכונות androidx.wear.compose:compose-foundation:1.1.0-alpha03
, androidx.wear.compose:compose-material:1.1.0-alpha03
וגם androidx.wear.compose:compose-navigation:1.1.0-alpha03
משוחררות. גרסה 1.1.0-alpha03 כוללת את ההוספות האלה.
תכונות חדשות
- הוספנו סגנון חדש עם קווים חיצוניים ל-
Chips
ול-Buttons
, ורכיבים חדשים שלOutlinedChip
ו-OutlinedButton
שמאפשרים ליצורChip/Button
שקוף עם גבול דק. (Id5972)
שינויים ב-API
- נוספו עומסי יתר לשינוי צורות של לחצנים (Icccde)
תיקוני באגים
- תיקנו את הגודל של אזור המתג של
ToggleChip
כי הוא לא תאם למפרט ממשק המשתמש שלו. במפרט ממשק המשתמש מצוין שצריך להוסיף מרווח של 4dp בין התווית לאזור של סמל המתג בגודל 24x24dp, כך שהרוחב הכולל הוא 28dp. עם זאת, בהטמעה מצוין באופן שגוי 36x24.dp לאזור של מתג הבקרה. כתוצאה מכך, 8.dp משטח התווית של הטקסט לא יהיו זמינים. הערה: תיקון הבאג הזה מאפשר להוסיף מקום לתווית הטקסט, וכתוצאה מכך הוא יכול להשפיע (לטובה) על פריסת הטקסט במקרה של טקסט שחורג מהמסגרת. אם יש לכם בדיקות של צילומי מסך שכוללות אתToggleChips
, יכול להיות שתצטרכו לעדכן אותן. (I514c8, b/240548670)
גרסה 1.1.0-alpha02
27 ביולי 2022
התכונות androidx.wear.compose:compose-foundation:1.1.0-alpha02
, androidx.wear.compose:compose-material:1.1.0-alpha02
וגם androidx.wear.compose:compose-navigation:1.1.0-alpha02
משוחררות. גרסה 1.1.0-alpha02 מכילה את ההוספות האלה.
תכונות חדשות
- שינינו את יחסי התלות של Compose for Wear OS בספריות הליבה של Compose מ-1.2.0 ל-1.3.0-alpha0X
שינויים ב-API
- נוספו עומסי יתר לשינוי צורות של צ'יפים (I02e87)
תיקוני באגים
- הוספנו אנימציה לשקיפות של הוויניטג' כשהתיבה של תיבת הדו-שיח מוצגת או מוסתרת, כדי שהיא תהיה עקבית עם אנימציית השינוי בגודל הקיימת. (Ida33e)
- תיקנו באג שגרם לחלוקת אפס בהתנהגות מסוימת של תנועה מהירה בזמן גלילה. (I86cb6)
- תוקן באג ב-
ChipDefaults.childChipColor()
כדי לוודא שצבע הרקע המושבת שקוף לגמרי. (I2b3c3, b/238057342)
גרסה 1.1.0-alpha01
29 ביוני 2022
התכונות androidx.wear.compose:compose-foundation:1.1.0-alpha01
, androidx.wear.compose:compose-material:1.1.0-alpha01
וגם androidx.wear.compose:compose-navigation:1.1.0-alpha01
משוחררות. גרסה 1.1.0-alpha01 כוללת את ההוספות האלה.
שינויים ב-API
- הפרמטר
contentDescription
של הבורר משמש עכשיו רק לאפשרות שנבחרה בבורר, והוא מקבל מחרוזת nullable (בעבר היה צריך להעביר מיפוי מהאפשרות לתיאור התוכן, אבל רק האפשרות שנבחרה הייתה בשימוש). (Ife6a7) - שיפרנו את הנגישות של Picker כך שאפשר לנווט במסכים עם כמה בוררים באמצעות קוראי מסך ותיאור התוכן נגיש (I64edb)
תיקוני באגים
- עדכנו את כללי פרופיל הבסיס שכלולים בחבילה של ספריית Wear Compose (I9c694)
- תיקנו את הכיוון של העברה מדורגת (גרדיאנט) של צ'יפים במצב 'ימין לשמאל'. הייתה שמאל למעלה > ימין למטה, עכשיו היא שמאל למעלה > שמאל למטה. (Ic2e77)
- עדכנו את מעברי הצבע שמוגדרים כברירת מחדל ב-
Chip/ToggleChip/Card
כדי שיתואמו למפרט העדכני ביותר של חוויית המשתמש.ChipDefaults.gradientBackgroundChipColors
עודכן כך שיתחיל מ-50% מהצבע הראשי במקום מ-32.5%.CardDefaults.cardBackgroundPainter
עודכן כך שיתחיל מ-30% מהצבע הראשי וייגמר ב-20% מ-onSurfaceVariant
(קודם היה 20% עד 10%onSurfaceVariant
).ToggleChip.toggleChipColors
משתנה ממישור ליניארי של 75% פני שטח ל-32.5% צבע ראשי ל-0% פני שטח ל-50% צבע ראשי. (I43bbd) - הוספנו צבע רקע (
MaterialTheme.color.surface
) מאחוריChip/ToggleChips
שיש להם רקעים עם שיפוע, כדי לוודא שהם יהיו גלויים כראוי במקרה הנדיר שבו נעשה שימוש בצבע בהיר מאחוריהם. (Ibe1a4, b/235937657) - עכשיו הפריטים בבורר תמיד מותאמים למרכז. תיקון באג שבו הגדרת
gradientRatio
לאפס גרמה לשינוי ההתאמה. (I712b8)
גירסה 1.0
גרסה 1.0.2
7 בספטמבר 2022
התכונות androidx.wear.compose:compose-foundation:1.0.2
, androidx.wear.compose:compose-material:1.0.2
וגם androidx.wear.compose:compose-navigation:1.0.2
משוחררות. גרסה 1.0.2 כוללת את השמירות האלה.
תיקוני באגים
- תיקנו את סדר ה-Z של מיקום וסמלי הדפים ב-Scaffold. מעכשיו, הסמנים יופיעו מעל לוויניאט, כך שהם לא יהיו מוסתרים על ידו אם הוא יופיע. (Ib988f, b/244207528)
גרסה 1.0.1
24 באוגוסט 2022
התכונות androidx.wear.compose:compose-foundation:1.0.1
, androidx.wear.compose:compose-material:1.0.1
וגם androidx.wear.compose:compose-navigation:1.0.1
משוחררות. גרסה 1.0.1 מכילה את השמירות האלה.
תיקוני באגים
- תיקון באג לוגי ב-
ScalingLazyColumn
שעלול לגרום לכך שרשימות עם מספר קטן (בדרך כלל 2) של פריטים לא משלימים את האינטליקציה, וכתוצאה מכך הן שקופות. (076c61)
גרסה 1.0.0
27 ביולי 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0
, androidx.wear.compose:compose-material:1.0.0
וגם androidx.wear.compose:compose-navigation:1.0.0
משוחררות. גרסה 1.0.0 כוללת את ההצהרות האלה.
תכונות עיקריות בגרסה 1.0.0
- זוהי הגרסה היציבה הראשונה של Compose ל-Wear OS (מידע נוסף).
- Compose for Wear OS מבוסס על ספריות הליבה של Compose, ומספק רכיבים נוספים שספציפיים למכשירים לבישים, ובמקרים המתאימים, הטמעות חלופיות של רכיבי הליבה של Compose שמותאמים למכשירים לבישים.
- רשימה של הרכיבים העיקריים ב-Wear Compose מופיעה בהערות המוצר של Compose for Wear OS Beta01.
תיקוני באגים
- הוספנו אנימציה לשקיפות של הוויניטג' כשהתיבה של תיבת הדו-שיח מוצגת או מוסתרת, כדי שהיא תהיה עקבית עם אנימציית השינוי בגודל הקיימת. (Ida33e)
- תיקנו באג שגרם לחלוקת אפס בהתנהגות מסוימת של תנועה מהירה בזמן גלילה. (I86cb6)
- תוקן באג ב-
ChipDefaults.childChipColor()
כדי לוודא שצבע הרקע המושבת שקוף לגמרי. (I2b3c3, b/238057342)
גרסה 1.0.0-rc02
22 ביוני 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0-rc02
, androidx.wear.compose:compose-material:1.0.0-rc02
וגם androidx.wear.compose:compose-navigation:1.0.0-rc02
משוחררות. גרסה 1.0.0-rc02 כוללת את ההצהרות האלה.
תיקוני באגים
- תיקנו את הכיוון של העברה מדורגת בכרטיסים במצב 'ימין לשמאל' (RTL). הוא היה בפינה השמאלית העליונה > בפינה השמאלית התחתונה, ועכשיו הוא בפינה השמאלית העליונה > בפינה הימנית התחתונה. (Ic2e77)
- עדכנו את מעברי הצבע שמוגדרים כברירת מחדל ב-
Chip/ToggleChip/Card
כדי שיתואמו למפרט העדכני ביותר של חוויית המשתמש.ChipDefaults.gradientBackgroundChipColors
עודכן כך שיתחיל מ-50% מהצבע הראשי במקום מ-32.5%. הערך שלCardDefaults.cardBackgroundPainter
עודכן כך שיתחיל מ-30% מהערך הראשי ויסתיים ב-20% מ-onSurfaceVariant
(קודם היה 20% עד 10% ב-onSurfaceVariant).ToggleChip.toggleChipColors
משתנה ממישור לינארי של 75% שטח ל-32.5% ראשי ל-0% שטח ל-50% ראשי. (I43bbd) - הוספנו צבע רקע (
MaterialTheme.color.surface
) מאחוריChip/ToggleChips
שיש להם רקעים עם שיפוע, כדי לוודא שהם יהיו גלויים כראוי במקרה הנדיר שבו נעשה שימוש בצבע בהיר מאחוריהם. (Ibe1a4, b/235937657) - עדכנו את כללי פרופיל הבסיס שכלולים בחבילה של ספריית Wear Compose (I9c694)
גרסה 1.0.0-rc01
15 ביוני 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0-rc01
, androidx.wear.compose:compose-material:1.0.0-rc01
וגם androidx.wear.compose:compose-navigation:1.0.0-rc01
משוחררות. גרסה 1.0.0-rc01 כוללת את השמירות האלה.
שינויים ב-API
- ממשקים בספריות compose נוצרים עכשיו באמצעות שיטות ברירת המחדל של ממשק jdk8 (I5bcf1)
תיקוני באגים
- הסרנו את הקריאה המפורשת ל-
fillMaxWidth()
בכותרת הרשימה כי היא לא נדרשת ויכולה לגרום לבעיות אםScalinglazyColumn
מכיל שילוב של רכיביListHeader()
ו-Chip()
, כי הרוחב נוטה לגדול או להתכווץ כאשר גוללים פריטים שלListHeader
אל המסך או ממנו. (I37144, b/235074035) - תיקנו באג ב-
ScalingLazyColumn
שעלול לגרום לכך שפריטי הרשימה לא יתוארו בצורה נכונה עד שגוללים, אם פריט הרשימה ה-0 היה גדול מספיק (כולל ריפוד) (Ic6159, b/234328517) - ביצענו התאמה קלה בתנועה האיטית
ScalingLazyColumn
כשהפריטים מגיעים לקצה המסך, כדי להתאים לעדכונים במפרט של חוויית המשתמש. ערכים ישניםCubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f)
-> ערכים חדשיםCubicBezierEasing(0.3f, 0f, 0.7f, 1f)
. כדי לשמור על ההתנהגות הישנה, אפשר לשנות את הערך שלscalingParams
ב-ScalingLazyColumn
(Ie375c) - הוספנו מרווחים פנימיים ל-
CompactChip
כדי לוודא שגודל משטח המגע שלו הוא לפחות 48dp גובה, בהתאם להנחיות הנגישות של Material. זה עשוי להשפיע על כל הפריסות שבהן אתם משתמשים ב-CompactChips
, כי הן יתפסו מקום נוסף. (I3d57c)
גרסה 1.0.0-beta03
1 ביוני 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0-beta03
, androidx.wear.compose:compose-material:1.0.0-beta03
וגם androidx.wear.compose:compose-navigation:1.0.0-beta03
משוחררות. גרסה 1.0.0-beta03 מכילה את ההוספות האלה.
תכונות חדשות
- שיפרנו את התמיכה ב-
ScalingLazyColumn
במצב כתיבת@Preview
. (I3b3b6, b/232947354)
שינויים ב-API
- שינינו את ערך ברירת המחדל של המאפיין
ScalingLazyColumn.horizontalAlignment
מ-Start ל-CenterHorizontally
כדי להבטיח שאם פריטי הרשימה לא ימלאו את כל רוחב העמודה, הם ייטוו כדי לשפר את החשיפה שלהם. כדי לחזור לקבוצת ההתנהגות הקודמת, מזיניםhorizontalAlignment = Alignment.Start
.(I9ed4b)
בעיות מוכרות
- גובה ההקשה/הנגיעה של CompactChip קטן מהגובה שנקבע בהנחיות הנגישות של Material. הבעיה תטופל במהדורה הבאה (15 ביוני). אם אתם משתמשים ב-CompactChip, השינוי ישפיע על הפריסות שלכם כי ל-CompactChips תהיה עכשיו תוספת של רווח למעלה ולמטה. צריך לשנות ולבדוק את הפריסות או לעיין בתגובות על הבאג כדי למצוא פתרון זמני לשימוש בהתנהגות הקיימת. (b/234332135)
תיקוני באגים
- הדגמה חדשה להוספה או להסרה של טקסט התחלה ב-
TimeText
באמצעות אנימציה. (I16d75) - הוספת בדיקות ל-
HorizontalPageIndicator.PagesState
(I64ed0) - עדכון
TimeText
בהתאם למפרטי חוויית המשתמש (Ib7ea1)
גרסה 1.0.0-beta02
18 במאי 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0-beta02
, androidx.wear.compose:compose-material:1.0.0-beta02
וגם androidx.wear.compose:compose-navigation:1.0.0-beta02
משוחררות. גרסה 1.0.0-beta02 כוללת את ההצהרות האלה.
תכונות חדשות
- הכלי לבחירת אירועים מגיב עכשיו תמיד לאירועי גלילה, גם במצב 'לקריאה בלבד'. כך המשתמשים לא צריכים לבחור תחילה בורר בהקשה כדי שיוכלו לגלול. במצב קריאה בלבד, אפשרויות שאינן האפשרות שנבחרה כרגע מוסתרות על ידי תוסף ב-
gradientColor
. (I72925) - שינינו את התנהגות ממשק המשתמש של
Chip/ToggleChip/CompactChip/SplitToggleChip
כדי למנוע ממנו לבצע את הפעולהfillMaxWidth
כברירת מחדל. במקום זאת, הם יתרחבו בהתאם לתוכן שלהם. כדי לשמור על ההתנהגות הקודמת, פשוט מוסיפים אתmodifier = Modifier.fillMaxWidth()
(I60a2c, b/232206371)
תיקוני באגים
- ה-constructor של
CurvedTextStyle
שמקבלTextStyle
מתייחס עכשיו גם ל-fontWeight
(יכול להיות שהתכונה הזו תתווסף ל-constructor ולשיטות ההעתקה בגרסאות עתידיות של ה-API) (Ieebb9) - שיפורים בהחלקה בקצה המסך. כשמשתמשים ב-
Modifier.edgeSwipeToDismiss
ומפעילים החלקה שמאלה מאזור הקצה, היא לא מפעילה יותר החלקה לסגירה כשכיוון ההחלקה משתנה לימין. בעבר, אפשר היה להפעיל את התכונה 'החלקה כדי לסגור' על ידי החלקה שמאלה ואז החלקה ימינה.(I916ea) HorizontalPageIndicator
מציג עכשיו עד 6 דפים במסך. אם יש יותר מ-6 דפים בסך הכול, מוצג אינדיקטור בגודל חצי בצד ימין או שמאל, עם מעבר חלק בין הדפים.(I2ac29)- שיפור התנהגות ברירת המחדל של הצמדה ב-
ScalingLazyColumn
וב-Picker
(I49539) - שיפורים בהחלקה בקצה המסך. כשמשתמשים ב-
Modifier.edgeSwipeToDismiss
, אפשר לסגור הודעות רק כשמתחילים לגעת בקצה המסך ומחליקים ימינה. בעבר, אפשר היה לסגור הודעות על ידי החלקה מכל חלק במסך אם הגלילה הגיעה להתחלה.(I8ca2a)
גרסה 1.0.0-beta01
11 במאי 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0-beta01
, androidx.wear.compose:compose-material:1.0.0-beta01
וגם androidx.wear.compose:compose-navigation:1.0.0-beta01
משוחררות. גרסה 1.0.0-beta01 כוללת את ההצהרות האלה.
מה חדש ב-Compose ל-Wear OS 1.0
גרסת 1.0.0-beta01
של Compose for Wear OS היא ציון דרך חשוב, כי הספרייה כוללת את כל התכונות וה-API נעול.
רכיבי Material ב-Wear Compose בגרסה 1.0 כוללים:
- Material Theme – משמש כתחליף ל-Compose for Mobile
MaterialTheme
, ומספק את הצבעים, הצורות והטיפוגרפיה ליצירת רכיבים במכשירי Wearables שמטמיעים את ההנחיות של חוויית המשתמש של Material Design ל-Wear באופן מובנה. Button
, CompactButton
ו-ToggleButton
– הכפתור מציע חריץ אחד לתמונה, לסמל או לטקסט קצר (עד 3 תווים). עגולות, בגדלים מומלצים של לחצני ברירת מחדל, גדולים או קטנים.CompactButton
כולל חריץ אחד לתוכן כלשהו (סמל, תמונה או טקסט). הוא עגול בצורתו וגודל הרקע שלו הוא קטן במיוחד. ל-CompactButton
יש שוליים שקופים אופציונליים סביב הרקע שמגדילים את האזור שניתן ללחוץ עליו.ToggleButton
הוא לחצן עם חריץ אחד לתוכן כלשהו (טקסט קצר, סמל או תמונה), עם מצבים של מצב מופעל/מושבת (מסומן/לא מסומן) עם צבעים וסמלים שונים כדי להראות אם הוא מסומן או לא.- כרטיסים – משמשים להצגת מידע על אפליקציות, כמו התראות. עיצוב גמיש לתרחישי שימוש שונים, עם
AppCard
ו-TitleCard
שמספקים פריסות שונות ותמיכה בתמונות כתוכן של כרטיסים או כרקעים. - צ'יפים – רכיבים בצורת אצטדיון שדומים ללחצנים, אבל עם שטח גדול יותר ומספר חריצי הצמדה שמאפשרים להוסיף תוויות, תוויות משניות וסמלים. בגדלים שונים ועם תמיכה בתמונות כרקעים.
- ToggleChips ו-SplitToggleChips – צ'יפ עם סטטוס מסומן/לא מסומן, עם הוספה של חריץ
ToggleControl
כדי להציג סמל כמו מתג או לחצן רדיו כדי להציג את הסטטוס המסומן של הרכיב. בנוסף, ל-SplitToggleChip
יש שני אזורים שניתן להקיש עליהם, אחד שניתן ללחוץ עליו ועוד אחד שניתן להעביר למצב מופעל או מושבת. - CircularProgressIndicator – אינדיקטור התקדמות בעיצוב Material ל-Wear עם שתי וריאציות. הראשון מייצג את אחוז השלמת המשימה המתמשכת, ותומך בפער במסלול העגול בין זוויות ההתחלה והסיום. השני מצביע על התקדמות לא ידועה למשך זמן המתנה לא ידוע.
- curvedText – חלק מ-DSL לתיאור
CurvedLayouts
, יחד עםcurvedRow
ו-curvedColumn
, כדי למקם רכיבים סביב מכשירים עגולים. פרטים נוספים עלCurvedLayout
ו-CurvedModifier
מופיעים בהמשך בקטע 'בסיס הרכיבים של Wear' (הרכיבים האלה ממלאים תפקיד דומה לזה של המודיפיקרים בעולם הלא מעוגל, ומאפשרים להגדיר היבטים שונים של הפריסה, הריפוד, המעברים הצבעוניים וכו'). - תיבת דו-שיח, התראה ואישור – תיבת דו-שיח מוצגת במסך מלא, בשכבה מעל כל תוכן אחר, ותומכת בסווייפ לסגירה. הוא תופס משבצת אחת, והתוכן שלו אמור להיות תוכן של תיבת דו-שיח בעיצוב Material של Wear, כמו התראה או אישור. התראה היא תוכן של תיבת דו-שיח עם עמדה מוגדרת מראש, עם משבצות לסמל, לכותרת ולהודעה. יש לו עומסי יתר לשני לחצנים שליליים וחיוביים שמוצגים זה לצד זה, או חריץ לצ'יפ אחד או יותר שנערמים אנכית. אישור הוא תוכן של תיבת דו-שיח עם עמדה מוגדרת מראש, שבו מוצגת הודעה למשך פרק זמן מסוים. יש בו מקום לסמל או לתמונה (שיכולה להיות אנימציה).
- HorizontalPageIndicator – הצגת מיקום הדף בצורה אופקית באופן שמתאים לגורם הצורה של מכשיר לביש. התצוגה תוכננה למלא את המסך ולהציג אינדיקטור מעוגל במכשירים עגולים. אפשר להשתמש בהם עם הצופה בדף של המלווה.
- Icon – הטמעה של Icon ב-Wear, שמקבלת את הצבע והאלפא מ-Wear Material Theme. למידע על סמל שניתן ללחוץ עליו, ראו כפתור או צ'יפ.
- בורר – הצגת רשימה שניתן לגלול בה של פריטים לבחירה. כברירת מחדל, הפריטים יחזרו על עצמם 'ללא הגבלה' בשני הכיוונים. אפשר להציג את הרשימה במצב קריאה בלבד כדי להסתיר אפשרויות שלא נבחרו.
- PositionIndicator – הצגת מיקום הגלילה או אינדיקציה אחרת למיקום, באופן שמתאים לפורמט של המכשיר לביש. התצוגה תוכננה למסך מלא, ומופיע בה אינדיקטור מעוגל במכשירים עגולים.
- Scaffold – הטמעה של המבנה הבסיסי של הפריסה החזותית של Wear Material Design. הרכיב הזה מספק ממשק API שמאפשר ליצור כמה רכיבים של Wear Material (כמו
TimeText
, PositionIndicator
ו-Vignette
) שמרכיבים את המסך, לוודא שקיימת אסטרטגיית פריסה מתאימה עבורם ולאסוף את הנתונים הנדרשים כדי שהרכיבים האלה יפעלו יחד בצורה תקינה. - ScalingLazyColumn – רכיב של רשימה עם גלילה, עם התאמה לעין הדג (fisheye) או עם התאמה לגודל המסך, שמהווה חלק חשוב בשפה של עיצוב Material ב-Wear. מאפשרת להגדיל את פריטי התוכן ולהוסיף להם אפקטים של שקיפות.
ScalingLazyColumn
תוכנן כך שיוכל לטפל במספר גדול של פריטי תוכן, שיוצרים ומרכיבים רק לפי הצורך. - פס מחליק – מאפשר למשתמשים לבחור מתוך טווח ערכים. טווח האפשרויות מוצג כסרגל, שאפשר להציג עם מפרידים.
- רכיב של פס צעדים – רכיב במסך מלא שמאפשר למשתמשים לבחור מתוך טווח ערכים באמצעות לחצני הגדלה/הקטנה בחלק העליון והתחתון של המסך, עם חריץ באמצע לטקסט או לצ'יפ.
- SwipeToDismissBox – טיפול בתנועת החלקה כדי לסגור. הוא תופס משבצת אחת לרקע (שמוצג רק במהלך מחווה החלקה) ולתוכן שבחזית. אפשר לשלב אותה עם ספריית הניווט של androidx באמצעות
SwipeDismissableNavHost
(ראו בהמשך 'ספריית הניווט של Wear Compose'). - טקסט – הטמעה של רכיב הטקסט של Material ב-Compose ל-Wear, שמקבל את הצבע והאלפא מעיצוב Material של Wear
- TimeText – רכיב להצגת השעה וסטטוס האפליקציה בחלק העליון של המסך. התאמה לצורת המסך באמצעות טקסט מעוגל במסכים עגולים.
ויניטה – עיבוד מסך לשימוש ב-Scaffold שמטשטש את החלק העליון והתחתון של המסך כשמשתמשים בתוכן שניתן לגלילה.
בנוסף, הרכיבים הבאים נכללים מ-Wear Compose Foundation:
CurvedLayout – Wear Foundation
CurvedLayout
הוא פריסה שאפשר ליצור ממנה קומפוזיציות, שממקמת את הצאצאים שלה בקו קשתי ומסתובבת אותם לפי הצורך. התצוגה הזו דומה לפריסה של שורות שמתעגלת לחלק של טבעת. חשוב לציין שהתוכן שלCurvedLayout
הוא לא פונקציית lambda שאפשר ליצור ממנה רכיבים, אלא שפת DSL (שפה ייעודית לדומיין). כל הרכיבים ב-DSL של CurvedLayout תומכים בפרמטר אופציונלי של שינוי, שנוצר מ-CurvedModifier
.basicCurvedText – רכיב ב-DSL של
CurvedLayout
, basicCurvedText
מאפשר למפתחים לכתוב בקלות טקסט מעוגל בהתאם לעיקול של עיגול (בדרך כלל בקצה של מסך עגול). אפשר ליצורbasicCurvedText
רק בתוךCurvedLayout
כדי להבטיח את חוויית השימוש הטובה ביותר, למשל, אפשרות לציין את המיקום ולהשתמש ב-CurvedModifiers
. חשוב לדעת שברוב המקרים כדאי להשתמש ב-curvedText במקום ב-textOnCurve, כי הוא משתמש בנושאי Material.curvedComposable – עטיפה של תוכן קומפוזיציה רגיל כדי שניתן יהיה להשתמש בו עם
CurvedLayout
. אםcurvedComposable
מכיל כמה רכיבים, הם יתוארו זה מעל זה (כמו Box). כדי להציב כמה רכיבים מורכבים לאורך עקומה, צריך לעטוף כל אחד מהם ב-curvedComposable
.curvedRow ו-curvedColumn – בדומה ל-Row ול-Column, אפשר להטמיע את
curvedRow
ו-curvedColumn
בתוךCurvedLayout
כדי למקם רכיבים לפי הצורך. ב-curvedRow
, אפשר לציין את כיוון הפריסה הזוויתית ואת ההתאמה הרדיאלית. עבורcurvedColumn
, אפשר לציין את ההתאמה הזוויתית ואת הכיוון הרדיאלי.CurvedModifier – כל הרכיבים המעוגלים מקבלים פרמטר של פונקציית שינוי (modifier) שאפשר ליצור באמצעות
CurvedModifier
: יש תמיכה ברקע, בגודל, בעובי ובריבוע ההפרדה.הרכיב הבא נכלל גם בתכונה 'ניווט ב-Compose' ב-Wear:
SwipeDismissableNavHost – רכיב שמאפשר ניווט עצמאי בהיררכיית הכתיבה, עם ניווט לאחור באמצעות מחווה של החלקה. התוכן מוצג בתוך
SwipeToDismissBox
, שמציג את רמת הניווט הנוכחית. במהלך מחווה של החלקה כדי לסגור, רמת הניווט הקודמת (אם יש כזו) מוצגת ברקע.כדי לקבל פרטים נוספים על מה שנוסף, אפשר לעיין בהערות המוצר הקודמות לגרסאות האלפא השונות.
שינויים ב-API
- נוספו פונקציות
CurvedModifier.padding*
. הם משמשים לציון שטח נוסף שצריך להוסיף סביב רכיב מעוגל. (I4dbb4) - הסרת הכיתה הפנימית
CompositionLocal
(I42490) - הוספנו ערכים קבועים לגדלים של הסמלים
Button
, CompactButton
ו-ToggleButton
, כמדריך (I57cab) - מוסיפים את הפרמטר enabled ל-
AppCard
ול-TitleCard
. עכשיו יש להם ממשק API דומה לכרטיסיandroidx.compose.material
. כשהפרמטרים מוגדרים כ-false, לא תהיה אפשרות ללחוץ על הכרטיס. (Idc48d, b/228869805)
תיקוני באגים
- לחצני ההקטנה וההגדלה ב-Stepper מושבתים עכשיו כשמגיעים למגבלות התחתונות או העליונות (והתכונה ContentAlpha.disabled חלה על iconColor) (I4be9f)
- הוספנו מרווח של 1dp סביב התוכן של הבורר כשהוא מצויר בגוון כהה יותר בחלק העליון ובחלק התחתון, כדי למנוע רעידות בטקסט שרואים כשמחליקים. (I0b7b9)
- הוספת בדיקות של צילומי מסך עבור
PositionIndicator
(I5e8bc) - הוספת בדיקות נוספות ל-
AppCard
ול-TitleCard
(I85391, b/228869805)
גרסה 1.0.0-alpha21
20 באפריל 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha21
, androidx.wear.compose:compose-material:1.0.0-alpha21
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha21
משוחררות. גרסה 1.0.0-alpha21 מכילה את ההוספות האלה.
תכונות חדשות
- נוספו משתני עקומה חדשים כדי לציין את הרקע של רכיב מעוקל:
CurvedModifier.background
, .radialGradientBackground
ו-.angularGradientBackground
(I8f392) - אפשר לציין את מצב הגלילה של טקסט מעוקל (חיתוך/נקודות אליפסיות/גלוי). (I8e7aa)
- הוספנו את המקש
CurvedModifier.weight
, בדומה למקש הזה ב-Compose. אפשר להשתמש בזה בצאצאים של curvedRow ו-CurvedLayout (לרוחב) ובצאצאים של curvedColumn (לגובה). (I8abbd) - נוספו המשתנים
CurvedModifier.size
, .angularSize
ו-.radialSize
כדי לציין את הגודל של רכיב מעוקל. (I623c7)
שינויים ב-API
- שינוי הסדר של הפרמטרים כדי לוודא שהרקע מופיע לפני הצבע באופן עקבי ב-Wear Compose API (I43208)
- הפרמטרים clockwise ו-
insideOut
הוסרו בכיתות חדשות והוחלפו בערכי קבועים מפורטים יותר. עכשיו אפשר להגדיר את כיוון הפריסה המעוגלת בהתאם ל-LayoutDirection
, והוא עובר בירושה אם לא צוין (If0e6a) - החלפנו את
autoCenter: Boolean
ב-autoCenter: AutoCentringParams
כדי לפתור בעיה ב-API ב-ScalingLazyColumn
. (Ia9c90) - שינינו את השם של
iconTintColor
ו-toggleControlTintColor
ל-iconColor
ו-toggleControlColor
ב-API כולו (Chip/ToggleChip/Dialog/Slider/Stepper/...), כי הצבע חל על חריץ הסמל/הלחצן להפעלה/השבתה. (Ied238) - כתיבה מחדש של הטיפוס בן המנייה (enum)
PageIndicatorStyle
כמחלקת ערכים (I2dc72) - הוספנו את הערך
RowScope/ColumnScope/BoxScope
לחלק מהמשבצות ב-Composables שלנו כדי לציין למפתחים מהן ההנחות לגבי הפריסות. כך המפתחים יוכלו להשתמש במודיפיקטורים נוספים בחלק מהתוכן בחריצים, ולא יצטרכו לספק רכיבי פריסה נוספים. בנוסף, ביצענו כמה עדכונים קלים בצבעים של כרטיסי האפליקציה/הכותר, כך שהגדרת ברירת המחדל שלtimeColor
ו-appColor
היאcontentColor
. עדיין אפשר לשנות את כל המאפיינים האלה בנפרד לפי הצורך. (I26b59) - הגדירו את האובייקט
SwipeToDismissBoxState.Companion
כפרטי (I39e84) - תיקון הסדר של הפרמטרים
InlineSlider
ו-Stepper
. שינוי פשוט בהתאם להנחיות API (I11fec) - הסרנו את האובייקט Saver עבור
SwipeToDismissBoxState
כי לא נעשה בו שימוש. (Ifb54e) - עדכנו את
CompactChip
בהתאם למפרט העדכני ביותר של חוויית המשתמש. המרווחים הוקטנו ל-horizontal = 12.dp ול-vertical = 0.dp. הגופן של התווית השתנה מ-button ל-caption1. הגדלים המומלצים של סמלים הם 20x20 כשמוצגים גם הסמל וגם התווית, ו-24x24 כשמוצג רק סמל בצ'יפ קומפקטי. בתרחיש לדוגמה שבו מוצג רק סמל, הקפדנו גם שהסמל יהיה ממורכז. (Iea2be) - הוספנו כמה שדות חדשים ל-
ScalingLazyListLayoutInfo
כדי לאפשר למפתחים לדעת את הסכום שלcontentPadding
ו-autoCenteringPadding
שהוחלו. המפתחות האלה יכולים להיות שימושיים למפתחים בזמן חישוב של תנועה מהירה או גלילה (I7577b) - הטמענו מעברים של כניסה/יציאה ל-Dialog. נוספה הפרמטר
showDialog
, ועכשיו תיבת הדו-שיח קובעת את החשיפה שלה (הדבר מאפשר לתיבת הדו-שיח להפעיל את האנימציות של הפתיח והסיום כשהיא מוצגת או מוסתרת). חשוב לדעת שהאנימציה של הסיום לא מופעלת כשהמשתמש יוצא מתיבת הדו-שיח באמצעות החלקה כדי לסגור אותה. הוספנו גם ערך ברירת מחדל למצב (state) ב-overload שלSwipeToDismissBox
שנוסף לאחרונה. (I682a0) - כדי לשפר את התמיכה ב-i18n וב-a11y, שינינו את
ToggleChip
ו-SplitToggleChip
כך שלא תהיה להם יותר ברירת מחדל למיקוםtoggleControl
. שינינו גם אתToggleChipDefaults
כך שהשיטות הבאות מחזירות עכשיו ImageVector במקום Icon (שימו לב: מאחר שהן לא מחזירות יותר @Composables, הן השתנו כך שיתחילו באותיות קטנות),SwitchIcon()->switchIcon()
,CheckboxIcon->checkboxIcon()
ו-RadioIcon()->radioIcon()
. השינוי הזה מאפשר למפתחים ליצור רכיביIcon()
משלהם עם קבוצתcontentDescription
מתאימה, ומעודד אותם לעשות זאת. (I5bb5b) - הוספנו פרמטר
SwipeDismissableNavHostState
אלSwipeDismissableNavHost
. כך אפשר להשתמש בסוויפ מהקצה במסכים המשמשים כיעדים לניווט, כי עכשיו אפשר להעלות אתSwipeToDismissBoxState
ולהשתמש בו כדי לאתחל גם אתSwipeDismissableNavHostState
וגם אתModifier.edgeSwipeToDismiss
במסכים שדורשים סוויפ מהקצה. (I819f5, b/228336555)
תיקוני באגים
- מוודאים שהפריסות המעוגלות מתעדכנות לפי הצורך. (Ie8bfa, b/229079150)
- תיקון באג ב-https://issuetracker.google.com/issues/226648931 (Ia0a0a, b/226648931)
- הוסרו הערות ניסיוניות מיותרות (I88d7e)
גרסה 1.0.0-alpha20
6 באפריל 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha20
, androidx.wear.compose:compose-material:1.0.0-alpha20
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha20
משוחררות. גרסה 1.0.0-alpha20 כוללת את ההצהרות האלה.
תכונות חדשות
- מוסיפים את המשתנה
edgeSwipeToDismiss
ל-SwipeToDismiss
. מאפשרת ל-swipeToDismiss
להיות פעיל רק בקצה השמאלי של אזור התצוגה. משמש כאשר מרכז המסך צריך לטפל בגלילה אופקית של דפים, למשל גלילה דו-מימדית במפה או החלקה אופקית בין דפים.(I3fcec, b/200699800)
שינויים ב-API
- הטמעה בסיסית של
CurvedModifiers
. ההטמעה הזו פותחת דרכים להתאמה אישית של תוכן מעוקל (אבל עדיין לא סיפקוCurvedModifiers
, והיכולת ליצור משתני עריכה מותאמים אישית עשויה להיות זמינה מאוחר יותר) (I9b8df) EdgeSwipe
עדכון של מסמכי העזרה של המשתנים והערכים שמוגדרים כברירת מחדל כדי להבין טוב יותר את הנושא .(I6d00d)- הוספת חריץ
PageIndicator
ל-Scaffold. הוספתPageIndicator
ישירות ל-Scaffold תעזור לנו לוודא שהיא תוצג בצורה נכונה במכשירים עגולים. (Ia6042) - מסירים את הסמלים שמוגדרים כברירת מחדל מהפרמטרים
InlineSlider
ו-Stepper. כך המפתחים יוכלו להקפיד יותר על הדרישות בנושא לוקליזציה ונגישות. הדגמות ודוגמאות הראו שימושים בסמלי ברירת המחדל. (I7e6fd) - החלפת שמות הפרמטרים Trailing ו-Leading בשמות Start ו-End ב-TimeText (Iaac32)
- הוספנו עומס יתר של
SwipeToDismissBox
עם פרמטרonDismissed
כדי לתמוך בשימוש הנפוץ של הפעלת אירוע ניווט כשתנועת החלקה מסתיימת. (I50353, b/226565726) - הסרת ההערות של
ExperimentalWearMaterialApi
מהשימוש ב-TimeText
(Ide520) - סימנו את הממשקים של ההיקף והמידע של
ScalingLazyList/Column
כסגורים, כי הם לא מיועדים להטמעה על ידי מפתחים חיצוניים. כך נוכל להוסיף אליהם חברים חדשים בעתיד בלי שינויים בינאריים שמשביתים את הקוד. (I7d99f) - הוספנו מאפיין
flingBehaviour
חדש לבורר ושיטהPickerDefaults.flingBehaviour()
כדי לאפשר הגדרה של התנהגות התנודות, כמו הוספת תמיכה ב-RSB.PickerState
מטמיע עכשיו את הממשקScrollableState
. (Ib89c7)
תיקוני באגים
- עדכון הכללים של פרופיל הבסיס של Android Runtime (ART) לספריות של Wear Compose. ART יכול להשתמש בכללי הפרופיל במכשירים כדי לקמפל מראש קבוצת משנה ספציפית של האפליקציה, וכך לשפר את הביצועים שלה. חשוב לזכור שלא תהיה לכך השפעה על אפליקציות שניתן לנפות באגים בהן. (Iaa8ef)
- שיפור מסמכי התיעוד (I2c051)
גרסה 1.0.0-alpha19
23 במרץ 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha19
, androidx.wear.compose:compose-material:1.0.0-alpha19
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha19
משוחררות. גרסה 1.0.0-alpha19 מכילה את ההוספות האלה.
שינויים ב-API
- שינינו את השם של
CurvedRow
ל-CurvedLayout
ועבדנו מחדש עליו כדי שיהיה היקף עם שפת DSL. באמצעות ה-DSL הזה, אפשר לציין פריסות עקומות מורכבות יותר באמצעות סדרה שלcurvedRow
ו-curvedColumn
בתצוגת עץ (אלה המקבילות של שורה ועמודה בפריסה עקומה). בתוך רכיבי הפריסה האלה אפשר להשתמש בשלושה רכיבים:curvedComposable
(כדי להוסיף כל @Composable),basicCurvedText
(טקסט מעוקל של ה-Foundation) ו-curvedText
(טקסט מעוקל מותאם לחומרים של Wear). (Ib776a) - מגדירים את הצד של
PositionIndicator
כניתן להתאמה אישית. עכשיו אפשר להגדיר את המיקום הבסיסי של PositionIndicator כ-End (בהתאם לכיוון הפריסה), כ-OppositeRsb (לוקח בחשבון את סיבוב המסך כדי למקם את עצמו מול ה-RSB הפיזי) או כ-Left ו-Right (מיקומים מוחלטים). (I2f1f3) - ב-
SwipeToDismissBox
, שינינו את השם שלSwipeDismissTarget
.Original ל-SwipeToDismissValue.Default
ואת השם שלSwipeDismissTarget.Dismissal
ל-SwipeToDismissValue.Dismissed
. כמו כן, הועברנו אתSwipeToDismissBoxDefaults.BackgroundKey
ו-SwipeToDismissBoxDefaults.ContentKey
אלSwipeToDismissKeys.Background
ו-SwipeToDismissKeys.Content
, בהתאמה. (I47a36) - הוספנו למצב 'בורר' מצב קריאה בלבד, למסכים עם כמה בוררים שבהם אפשר לערוך רק בורר אחד בכל פעם. כשהבורר מוגדר לקריאה בלבד, מוצגת בו האפשרות שנבחרה כרגע ותווית, אם סיפקו אותה. (I879de)
SwipeToDismissBoxState
עבר שינוי מבני כדי להגביל את ההיקף שלExperimentalWearMaterialApi
ל-Modifier.swipeable
ול-SwipeableState
, שבהם נעשה שימוש פנימי עכשיו.SwipeToDismissBoxState
כולל עכשיו את המאפייניםcurrentValue
, targetValue
, isAnimationRunning
ו-snapTo
כדי לתמוך בתרחישי שימוש נפוצים. אפשר להודיע לנו אם יש לך צורך במאפיינים נוספים. תוקן גם ההתנהגות שלSwipeableState
במקרה שבו ההיסט של החלקה נמצא בתוך שגיאת עיגול של עוגן. (I58302)
תיקוני באגים
- קוד פשוט וקבוע לזיהוי אם אפשר לגלול בתוכן של
ScalingLazyColumn
(משמש כדי להחליט אם להציג פס גלילה או לא) (I7bce0) - תוקנה באג באינדיקטור המיקום כשמשתמשים בו עם יותר ממצב אחד ומחליפים ביניהם (I320b5)
- עדכנו את הגופנים/הטיפוגרפיה של נושא ברירת המחדל של Compose ל-Wear OS בהתאם להנחיות העדכניות ביותר שלנו בנושא חוויית משתמש. חשוב לציין ש-display1 (40.sp) ו-display2 (34.sp) קטנים עכשיו מהערכים הקודמים שלהם, וכן בוצעו עדכונים קלים נוספים לגובה השורה ולמרווח בין השורות. (Ie3077)
- הוספנו התנגדות ל-
SwipeToDismissBox
כדי שהתנועה תתבצע רק כשמחליקים כדי לסגור, ולא בכלל בכיוון ההפוך. (Ifdfb9) - שינינו חלק מערכי ברירת המחדל של הפרמטרים לפונקציות
CircularProgressIndicator
כדי ליישר קו עם ההנחיות של Wear Material Design לממשק המשתמש. בגרסה של Spinner/Indeterminant, הגודל (40->24.dp), indicatorColor (primary->onBackground), השקיפות של trackColor (30%->10%) ורוחבו של הקו (4->3dp) עודכנו. בגרסה Progress/Determinate, השקיפות של trackColor (30%->10%) עודכנה. (I659cc) - עדכנו את הפרמטרים של ברירת המחדל להתאמה לעיצוב של
ScalingLazyColumn
בהתאם למפרטי חוויית המשתמש העדכניים ביותר של Material Design ל-Wear. מבחינה חזותית, התוצאה היא שפריטי הרשימה מתחילים להתכווץ קרוב יותר למרכז הרשימה, אבל להתכווץ פחות בקצה הרשימה בהשוואה לעבר. (Ica8f3) - ביצענו כמה שינויים ב-
ScalingLazyColumnDefaults.snapFlingBehavior
כדי לשפר את הסוף של האנימציה (If3260)
גרסה 1.0.0-alpha18
9 במרץ 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha18
, androidx.wear.compose:compose-material:1.0.0-alpha18
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha18
משוחררות. גרסה 1.0.0-alpha18 מכילה את ההצהרות האלה.
שינויים ב-API
- כמה שיפורים ב-PositionIndicator: שם הפרמטר ShowResult השתנה ל-PositionIndicatorVisibility. שיפורים מסוימים בביצועים כדי למנוע חישובים חוזרים כשאין צורך (Iaed9d)
- הצביעה המומלצת של
SplitToggleChip
עודכנה. ל-SplitToggleChip יש עכשיו רקע בצבע אחיד כשהוא מסומן או לא מסומן, והצבע של ToggleControl הוא האינדיקטור הראשי לכך שהרכיב מסומן או לא. הוספנוToggleDefaults.splitToggleChipColors()
חדש כדי לתמוך בסכימת הצבעים החדשה. הפשטנו גם את השיטות שלtoggleChipColors()
והסרנו את splitBackgroundOverlayColor (I7e66e) - הוספנו את unadjustedSize ל-
ScalingLazyListItemInfo
כי לא בטוח לחשב את גודל הפריט המקורי באמצעות הגודל המותאם וגורם ההתאמה, בגלל הדיוק של החישובים במתמטיקה של float. (I54657, b/221079441) - מוסיפים את
HorizontalPageIndicator
. הוא מייצג את המספר הכולל של הדפים ואת הדף שנבחר. יכול להיות לינארי או מעוגל, בהתאם לצורת המכשיר. הוא תומך גם בצורת מחוון בהתאמה אישית, שמגדירה את האופן שבו כל מחוון מיוצג באופן חזותי. (Iac898) - עדכנו את
PickerState
כדי שניתן יהיה לעדכן את numberOfOptions. כך אפשר לתמוך בתרחישי שימוש כמוDatePicker
, שבהם מספר הימים בחודש משתנה בהתאם לחודש שנבחר. הפרמטר של ה-constructor ל-PickerState השתנה בהתאם ל-initialNumberOfOptions. (Iad066) - הסתרת
PositionIndicator
כשיש סרגל גלילה ולא ניתן לגלול. (Id0a7f) - כדי לשמור על עקביות עם Scaffold, עכשיו מוצגים
PositionIndicator
ו-Vignette
ברכיב התיבת הדו-שיח במסך מלא. אנחנו משתמשים עכשיו גם ב-ScalingLazyColumn
במקום ב-Column
, כלומר תוכן התיבת הדו-שיח נמצא עכשיו ב-ScalingLazyListScope
(ובדרך כלל צריך להקיף אותו בפריט { /* content */ }). בהתאם, תיבת הדו-שיח תומכת בפרמטר verticalArrangement. (Idea13) - שינינו את השם של נכס toggleIcon של
ToggleChip
ו-SplitToggleChip
ל-toggleControl כדי להתאים אותו יותר ל-Material Design, וכדי לעזור למעצבים ולמפתחים לנווט ב-API. (If5921, b/220129803) - הוספנו את הכיתוב caption3 למערכת הסיווג של נושאי העיצוב של Wear Material.caption3 הוא גופן קטן שמשמש לכתיבה ארוכה במיוחד, כמו טקסטים משפטיים. (I74b13, b/220128356)
תיקוני באגים
- מפסיקים את אנימציית הצמדת התמונה כשמגיעים אליה. (Idb69d)
- אנימציה של שינויים ב-PositionIndicator. (I94cb9)
- על סמך משוב לגבי ממשק המשתמש או חוויית המשתמש, שינינו את ה-autoCentering של
ScalingLazyColumn
כך שיהיה מספיק מקום רק כדי לוודא שאפשר יהיה לגלול את הפריטים עם המדדScalingLazyListState.initialCenterItemIndex
ומעלה עד למרכז אזור התצוגה. כך המפתחים יכולים למקם בהתחלה פריט אחד או שניים לגבי הפריט במרכז, שלא ניתן לגלול אליהם. המשמעות היא ש-ScalingLazyColumn
עם autoCenter לא יוכל לגלול מעלinitialCenterItemIndex/initialCenterItemScrollOffset
(I22ee2) - הוספנו הדגמה לבורר תאריכים ותיקנו באג ב-
PickerState
שבו האפשרות initiallySelectedOption לא הופעלה עד שהבורר הוצג. (Id0d7e) - כדי לצמצם את החיתוך של פריטים רחבים יותר מסוג
ScalingLazyColumn
במסכים עגולים, הגדלת את ברירת המחדל של הרווח האופקי של התוכן מ-8 ל-10dp. (I0d609) - מוודאים שהסמל
PositionIndicator
מוצג בזמן הגלילה. (Ied9a2)
גרסה 1.0.0-alpha17
23 בפברואר 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha17
, androidx.wear.compose:compose-material:1.0.0-alpha17
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha17
משוחררות. גרסה 1.0.0-alpha17 מכילה את ההצהרות האלה.
תכונות חדשות
- הוספנו תמיכה ב-Snap שאפשר להשתמש בה עם
ScalingLazyColumn
. מגדירים אתflingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state)
כדי להפעיל תמיכה ב-Snap. (I068d3, b/217377069) - הוספנו הדגמות ל-Picker, שמשמש לבחירת שעה בפורמט של 24 שעות או 12 שעות. (Ie5552)
שינויים ב-API
- תיקון בעיה בגופנים ובסגנונות מותאמים אישית של
TimeText
במכשיר מרובע (Iea76e) - עכשיו ל-
ScalingLazyListLayoutInfo
יש את המאפייניםreverseLayout
, viewportSize
ו'כיוון' שתואמים לאלה שלLazyListLayoutInfo
(I4f258, b/217917020) - ל-
ScalingLazyColumn
יש עכשיו מאפייןuserScrollEnabled
שתואם למאפיין שלLazyList
(I164d0, b/217912513) - בוררי הבחירה כוללים עכשיו שינוי הדרגתי בחלק העליון והתחתון כברירת מחדל (Iab92a)
תיקוני באגים
- שינינו את
ScalingLazyColumn
כך שהוא לא ימלא יותר את כל המרחב של הרכיב ההורה שלו. במקום זאת, הגודל שלו ייקבע לפי גודל התוכן שלו. כך היא תואמת להתנהגות שלLazyColumn
. אם רוצים להחזיר את ההתנהגות הישנה, מעבירים את הערךModifier.fillMaxWidth()/width()/widthIn()
ל-ScalingLazyColumn
(I51bf8) - שיפרנו את הודעת החריגה ב-
SwipeDismissableNavHost.kt
שהופיעה אם סטאק החזרה לאחור של הניווט היה ריק. (I1b1dc)
גרסה 1.0.0-alpha16
9 בפברואר 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha16
, androidx.wear.compose:compose-material:1.0.0-alpha16
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha16
משוחררות. גרסה 1.0.0-alpha16 מכילה את ההצהרות האלה על ביצוע שינויים (commits).
תכונות חדשות
- מוסיפים את
CircularProgressIndicator
. אינדיקטורים של התקדמות מציגים את משך התהליך או זמן המתנה לא ידוע. תמיכה בפער (חור) ל-TimeText או לרכיבים אחרים אם משתמשים במסך מלא. (Iab8da)
שינויים ב-API
- לבוררי הבחירה יש עכשיו פרמטר
flingBehavior
, וערך ברירת המחדל גורם להם להיצמד לאפשרות הקרובה ביותר בזמן גלילה או החלקה. (I09000) - ממשק API נוסף של מספר שלם ל-InlineSlider ול-Stepper (I1b5d6)
תיקוני באגים
- שינינו את ברירת המחדל של initialCenterItemIndex עבור
ScalingLazyListState
מ-0 ל-1. המשמעות היא שאם לא תתבצע שינוי במהלך יצירת המצב באמצעותScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =
)
, פריט הרשימה השני (index == 1) יוצב במרכז אזור התצוגה בזמן האתחול, והפריט הראשון (index == 0) יוצב לפניו. כך אפשר ליהנות מאפקט חזותי טוב יותר כברירת מחדל, כי רוב אזור התצוגה יאוכלס בפריטי הרשימה. (I0c623, b/217344252) - כדי לוודא שיש מספיק פריטים ברשימה שאפשר לצייר (גם כשאנחנו מקטינים את הגודל של חלק מהם), הפחתנו את
ScalingLazyColumn
extraPadding
שמוגדרת כברירת מחדל מ-10% ל-5%. כך תוכלו להימנע מהרכבת פריטים נוספים ברשימה שעשויים שלא להופיע בחלון התצוגה. אם נעשה שימוש ב-scalingParams לא סטנדרטיים (למשל, שינוי קיצוני יותר של התצוגה), המפתח יכול לשנות את הרווח הנוסף באמצעותviewportVerticalOffsetResolver
. (I76be4) - תוקנה בעיה ב-TimeText בכמה שורות במכשיר מרובע (Ibd3fb)
- שינינו את
ScalingLazyColumn
כך שהוא לא ימלא יותר את כל המרחב של הרכיב ההורה שלו. במקום זאת, הגודל שלו ייקבע לפי גודל התוכן שלו. כך היא תואמת להתנהגות שלLazyColumn
. אם רוצים להחזיר את ההתנהגות הישנה, מעבירים אתModifier.fillMaxSize()
אלScalingLazyColumn
– הערה: השינוי הזה לא הושלם, והוא יטופל בשינוי נוסף במהדורת האלפא הבאה. (I3cbfa)
גרסה 1.0.0-alpha15
26 בינואר 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha15
, androidx.wear.compose:compose-material:1.0.0-alpha15
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha15
משוחררות. גרסה 1.0.0-alpha15 מכילה את ההצהרות האלה.
שינויים ב-API
- הוספנו נכס חדש,
autoCentering
, ל-ScalingLazyColumn
. כשהערך הוא true (ברירת המחדל), אפשר לגלול את כל הפריטים, כולל הראשון והאחרון, כדי שהם יופיעו במרכז אזור התצוגה של הרשימות. הערה: אם משתמשים ביישור אוטומטי, מומלץ להגדיר את הרווח האנכי של התוכן ל-0.dp. אם תספקו גם מרכוז אוטומטי וגם תוספת מרווח לתוכן האנכי, שתי התכונות האלה יגרמו ליצירת מקום נוסף לפני הפריט הראשון ואחרי הפריט האחרון ברשימה, כך שאפשר יהיה לגלול עוד יותר. (I2a282, b/214922490) - הוספנו רכיב
Dialog
שמאפשר לכל רכיב מורכב להפעיל תיבת דו-שיח במסך מלא שמופיעה מעל תוכן אחר. כשתיבת הדו-שיח מוצגת, אפשר לסגור אותה בתנועת החלקה, ובמהלך החלקת האצבע תוצג ברקע תיבת הדו-שיח של ההורה. תוכן התיבת הדו-שיח אמור להיותAlert
אוConfirmation
(ששינו את השם מהרכיבים הקודמיםAlertDialog
ו-ConfirmationDialog
) –Alert
, Confirmation
ו-Dialog
נמצאים כולם בחבילהandroidx.wear.compose.material.dialog
. אפשר להשתמש בהתראות ובאישורים כיעדי ניווט. בנוסף, הוספנו את ColumnScope לפרמטרים של התראות ואישורים לפי הצורך. (Ia9014) - הסרנו את
onSurfaceVariant2
מהצבעים של נושא Material ב-Compose for WearOS והחלפנו את השימושים בספרייה ב-onSurfaceVariant
. (Icd592) - הוספנו שיטה לבחירת אפשרות באופן פרוגרמטי ב-
PickerState
. אפשר גם לציין את האפשרות שנבחרה בהתחלה כשיוצריםPickerState
. (I92bdf) - הוספנו תמיכה בהתאמה אישית של התנהגות ה-fling של
ScalingLazyColumn
. (I1ad2e, b/208842968) - הוספנו את
NavController.currentBackStackEntryAsState()
לספרייהWear.Compose.Navigation
. (If9028, b/212739653) - נוספו
Modifier.onRotaryScrollEvent()
ו-Modifier.onPreRotaryScrollEvent()
למכשירי Wear עם לחצן צד מסתובב.(I18bf5, b/210748686)
גרסה 1.0.0-alpha14
12 בינואר 2022
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha14
, androidx.wear.compose:compose-material:1.0.0-alpha14
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha14
משוחררות. גרסה 1.0.0-alpha14 מכילה את ההצהרות האלה.
תכונות חדשות
הוספנו כמה שיטות ל-
ScalingLazyListState
כדי לאפשר למפתחים לשלוט בגלילה לפריטי רשימה ספציפיים, וגם להגדיר את הפריט הראשוני ברשימה ואת ההיסט.כחלק מהשינוי הזה, שינינו גם את ScalingLazyList כך שיהיה מכוון סביב מרכז אזור התצוגה של ScalingLazyList, ולא לתחילת אזור התצוגה.
נוסף נכס חדש
anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter
ל-ScalingLazyList
כדי לקבוע אם מרכז התמונה (ScalingLazyListAnchorType.ItemCenter
) אוEdge
(ScalingLazyListAnchorType.ItemStart
) ייושרו לקו המרכזי של אזור התצוגה.כתוצאה מכך, הערכים של
ScalingLazyListItemInfo.offset
ו-ScalingLazyListItemInfo.adjustedOffset
השתנו, והם ישקפו עכשיו את ההיסט של הפריט ביחס למיקום של פריט הרשימה וגם ביחס ל-anchorType
של הרשימה. לדוגמה, עבורScalingLazyColumn
עםanchorType
שלItemCenter
ופריט ברשימה שממוקם במרכז של ציר מרכז המסך, ההיסט יהיה0
.השיטות החדשות הן
scrollTo
,animatedScrollTo
,centerItemIndex
ו-centerItemOffset
. (I61b61)הוספנו טיפול בכפתור 'הקודם' ל-
SwipeDismissableNavHost
, כך שלחיצה על 'הקודם' תעביר אתכם לרמה הקודמת בהיררכיית הניווט. (I5b086, b/210205624)
גרסה 1.0.0-alpha13
15 בדצמבר 2021
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha13
, androidx.wear.compose:compose-material:1.0.0-alpha13
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha13
משוחררות. גרסה 1.0.0-alpha13 מכילה את ההצהרות האלה.
שינויים ב-API
- הפכנו את
RangeIcons
לפנימי (הפנייה פנימית אליו היאInlineSlider
ו-Stepper
). (I927ec)
תיקוני באגים
תוקנה בעיה שבה
SwipeDismissableNavHost
הוסיף יעד להיררכיית Compose לפני שהוא הגיע למצבCREATED
במחזור החיים, וכתוצאה מכך נוצרIllegalStateException
. התיקון הזה היה תנאי מוקדם לעדכון התלות ב-navigation-compose
ל-2.4.0-beta02
ואילך. (I40a2b, b/207328687)נוספה ספריית enum של Drawables לקבלת משאבי drawable בספריית Wear Compose, כך שאין יותר צורך בהשתקפות. התיקון הזה מטפל בבאג שבו פריטים גרפיים בספרייה הוסרו כשהופעלו הפונקציות
minifyEnabled=true
אוshrinkResources=true
). (Ib2a98)נוספו בדיקות ל-
Stepper
ב-Wear Compose (I2d03a)נוספו דוגמאות ל-
SwipeDismissableNavHost
בתכונה 'ניווט בזמן כתיבת הודעות' ב-Wear. (I85f06)
גרסה 1.0.0-alpha12
1 בדצמבר 2021
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha12
, androidx.wear.compose:compose-material:1.0.0-alpha12
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha12
משוחררות. גרסה 1.0.0-alpha12 מכילה את ההוספות האלה.
תכונות חדשות
הוספנו רכיב של פס צעדים שמאפשר למשתמשים לבחור מתוך טווח ערכים. פס ההזזה הוא רכיב בקרה במסך מלא עם לחצני הגדלה והקטנה בחלק העליון והתחתון, וחריץ באמצע (שצפוי להכיל צ'יפ או טקסט). אם צריך, אפשר להתאים אישית את סמלי הלחצנים. (I625fe)
הוספנו 2 רכיבים חדשים ליצירת רכיבים מורכבים להצגת תיבות דו-שיח: AlertDialog ממתין לתגובה מהמשתמש ומציג כותרת, סמל, הודעה ואת אחת מהאפשרויות הבאות: א) שני לחצנים לבחירות פשוטות של 'כן' או 'לא', או ב) צ'יפים מוערמים אנכית או צ'יפים של מתגים לבחירות גמישות יותר. ConfirmationDialog מציג אישור עם זמן קצוב לתפוגה. לתיבת הדו-שיח הפשוטה הזו יש משבצות לכותרת ולסמל (אנימציה). (Ic2cf8)
שינויים ב-API
- מוסיפים יחידות (מיליסקונד) לערכים המוצעים של משך הזמן של תיבת הדו-שיח. (I09b48)
גרסה 1.0.0-alpha11
17 בנובמבר 2021
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha11
, androidx.wear.compose:compose-material:1.0.0-alpha11
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha11
משוחררות. גרסה 1.0.0-alpha11 מכילה את ההצהרות האלה.
תכונות חדשות
- הוספנו רכיב לבחירת פריטים שמאפשר למשתמש לבחור פריט מתוך רשימה שאפשר לגלול בה. כברירת מחדל, רשימת הפריטים שאפשר לבחור חוזרת על עצמה 'ללא הגבלה' בשני הכיוונים, כדי ליצור רושם של גליל מסתובב שנראה מהצד. שתי תכונות נוספות יתווספו במהדורות מאוחרות יותר: הצמדה לערך אחרי החלקה או תנועה מהירה, והוספת פונקציה ל-PickerState כדי להגדיר את הערך הנוכחי או לגלול אליו. (I6461b)
שינויים ב-API
- נוספו ScalingLazyItemScope ומשתני אופן הצגה חדשים fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight כדי לאפשר שינוי הגודל של פריטים ברשימה בהתאם לגודל של מאגר הפריטים ההורה. אפשר להגדיר שהפריטים ימלאו את כל הגודל של האב או חלק ממנו. כך אפשר להציג פונקציונליות שכבר זמינה ב-LazyRow/Column (I4612f)
- נוספה תמיכה ב-ScalingLazyColumn כדי לאפשר לפריטים שיהיה להם מפתח. הוספנו גם שיטות נוחות שמאפשרות להוסיף פריטים ממערכי נתונים ומרשימות. (Ic1f89)
תיקוני באגים
- דוגמאות נוספות ל-TimeText (I8cb64)
גרסה 1.0.0-alpha10
3 בנובמבר 2021
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha10
, androidx.wear.compose:compose-material:1.0.0-alpha10
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha10
משוחררות. גרסה 1.0.0-alpha10 מכילה את ההצהרות האלה.
תכונות חדשות
הוספנו רכיב InlineSlider ל-Compose ב-Wear. InlineSlider מאפשר למשתמשים לבחור מתוך טווח ערכים. טווח האפשרויות מוצג כסרגל בין הערכים המינימלי והמקסימלי של הטווח, וממנו המשתמשים יכולים לבחור ערך יחיד. (If0148)
כדאי לעיין בCodelab החדש של Compose ל-WearOS.
שינויים ב-API
- עכשיו ל-Macrobenchmark יש
minSdkVersion
של23
. (If2655)
תיקוני באגים
- עדכון הטיפול במעברים ב-SwipeDismissableNavHost ב-SideEffect (I04994, b/202863359)
- עדכון הטיפול במעברים ב-SwipeDismissableNavHost (I1cbe0, b/202863359)
גרסה 1.0.0-alpha09
27 באוקטובר 2021
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha09
, androidx.wear.compose:compose-material:1.0.0-alpha09
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha09
משוחררות. גרסה 1.0.0-alpha09 מכילה את השמירות האלה.
תכונות חדשות
- השקנו את גרסת ה-Developer Preview של Compose ב-Wear OS. בפוסט הזה בבלוג אנחנו מפרטים על הרכיבים העיקריים של Compose ומציינים קישורים למשאבים נוספים שיעזרו לכם להתחיל להשתמש בהם.
שינויים ב-API
- הוספנו תמיכה למפתחים כדי שיוכלו להתאים אישית את כל הצבעים של עיצוב הצבעים של Material Design ב-Wear. (I4759b, b/199754668)
תיקוני באגים
- נוספו דוגמאות ל-SwipeToDismissBox שמשמרות את המצב (Ibaffe)
- הוספנו קישורים למדריכים ב-developer.android.com מ-KDocs עבור CurvedText, TimeText ו-SwipeToDismissBox. (I399d4)
- SwipeDismissableNavHost מפעיל עכשיו שגיאה אם אין יעד נוכחי (המשמעות היא ש-NavGraph לא נוצר באמצעות פונקציית השירות wear.compose.navigation.composable) (I91403)
- נוספו מסמכים ומקרים לדוגמה לגבי שימוש במקור זמן ב-TimeText (I4f6f0)
גרסה 1.0.0-alpha08
13 באוקטובר 2021
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha08
, androidx.wear.compose:compose-material:1.0.0-alpha08
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha08
משוחררות. גרסה 1.0.0-alpha08 מכילה את ההצהרות האלה.
שינויים ב-API
- שינינו את השם של המאפיינים
body
של AppCard ו-TitleCard ל-content
והעברנו אותם לסוף רשימת הנכסים כדי לאפשר לספק אותם כפונקציית lambda עוקבת. השם שלbodyColor
השתנה גם ל-contentColor
כדי לשמור על עקביות עם שמות המשבצות החדשים. (I57e78)
תיקוני באגים
- נוספו קישורים למדריכים של KDocs ב-developer.android.com לגבי רכיבים של כפתור, כרטיס, צ'יפ, עיצוב, אינדיקטור מיקום ורכיבים של עמודות עיכובי התאמה. (I22428)
- תיקון באג ב-WearOS שבו לפעמים לא ניתן לסמן פריטים בתנועת החלקה. (I9387e)
- נוספו דוגמאות ל-Button, CompactButton, Chip, CompactChip, AppCard, TitleCard, ToggleButton, ToggleChip ו-SplitToggleChip (Iddc15)
- הוספנו בדיקות ביצועים של מיקרו-ביצועים ל-Card, Chip, ToggleChip, TimeText ו-ScalingLazyColumn. (If2fe9)
גרסה 1.0.0-alpha07
29 בספטמבר 2021
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha07
, androidx.wear.compose:compose-material:1.0.0-alpha07
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha07
משוחררות. גרסה 1.0.0-alpha07 מכילה את ההצהרות האלה על ביצוע שינויים (commits).
תכונות חדשות
- הוספנו את הרכיב CurvedText ב-Material. הרכיב הזה מאפשר למפתחים לכתוב בקלות טקסט מעוקל בהתאם לעיקול של עיגול (בדרך כלל בקצה של מסך עגול). (I19593)
שינויים ב-API
- נוספו בדיקות ל-TimeText (Idfead)
- הפיכת ArcPaddingValues לממשק. (Iecd4c)
- נוספה אנימציה ל-SwipeToDismissBox (I9ad1b)
- הוספנו את הפרמטר hasBackground ל-API של SwipeToDismissBox כדי שאפשר יהיה להשבית את מחוות החלקה כשאין תוכן רקע שאפשר להציג. (I313d8)
- הפונקציה
rememberNavController()
מקבלת עכשיו קבוצה אופציונלית של מכונותNavigator
שיתווספו ל-NavController
המוחזר, כדי לתמוך טוב יותר בנווטים אופציונליים כמו אלה מ-Accompanist Navigation Material. (I4619e) - הפניה ל-NamedNavArgument מ-navigation-common והסרת העותק מ-wear.compose.navigation. (I43af6)
תיקוני באגים
- תוקנו בעיות לא עקביות בבדיקת CurvedRow במכשירים קטנים יותר. (If7941)
- תוקנה בעיה של הבהוב אפשרי ב-CurvedRow כשהתוכן מתעדכן, ולוודא שהשורה המעוקלת נמדדת מחדש (Ie4e06)
- הפונקציה ChipDefaults.gradientBackgroundChipColors() עודכנה בהתאם לשינויים במפרט חוויית המשתמש. עכשיו, העברה הצבעונית מתחילה ב-MaterialTheme.colors.primary עם אלפא של 32.5% ומסתיימת ב-MaterialTheme.colors.surface עם אלפא של 0% מעל רקע של MaterialTheme.colors.surface עם אלפא של 75%. (Id1548)
- עדכנו את הצבעים של ToggleChips במצב שנבחר, כך שיתאימו להנחיות העדכניות ביותר לגבי מפרט ממשק המשתמש של Material Design ב-Wear. כאשר מסמנים ToggleChips, הם כוללים עכשיו רקע עם שיפוע מ-MaterialTheme.color.surface עם אלפא של 0% בפינה הימנית העליונה, ל-MaterialTheme.color.primary עם אלפא של 32% בפינה הימנית התחתונה, מעל רקע של MaterialTheme.color.surface עם אלפא של 75%. כך נוצר הבדל עדין יותר בין מצב מסומן למצב לא מסומן של ToggleChip. (Idd40b)
גרסה 1.0.0-alpha06
15 בספטמבר 2021
התכונות androidx.wear.compose:compose-foundation:1.0.0-alpha06
, androidx.wear.compose:compose-material:1.0.0-alpha06
וגם androidx.wear.compose:compose-navigation:1.0.0-alpha06
משוחררות. גרסה 1.0.0-alpha06 מכילה את ההוספות האלה.
תכונות חדשות
- הוספנו את Scaffold – רכיב מורכב ברמת האפליקציה שמספק מבנה לטיפול במיקום של אינדיקטורים של מיקום (כמו גלילה או עוצמת קול), אזור בחלק העליון של המסך להצגת השעה וסטטוס האפליקציה, ותמיכה גם בווינייט (Vignette) כדי לטשטש את הקצה העליון והתחתון של המסך עבור תוכן שניתן לגלילה. האזור הראשי של ה-Scaffold הוא המקום שבו מוצבים תוכן האפליקציה. (I5e0bf)
- נוספה הטמעה של TimeText ל-Wear Compose (I5654c)
ספריית הניווט של Wear Compose
הוספנו את הגרסה הראשונה של ספריית הניווט של Wear Compose, שמספקת שילוב בין ספריות Wear Compose ו-Androidx Navigation. הוא מספק דרך פשוטה לנווט בין פונקציות @Composable בתור היעדים באפליקציה.
הגרסה הראשונית הזו כוללת:
- רכיב
SwipeDismissableNavHost
שאפשר ליצור ממנו קומפוזיציות, שמארח תרשים ניווט ומאפשר ניווט לאחור באמצעות תנועות החלקה - תוסף
NavGraphBuilder.composable
שעוזר ביצירת תרשימי ניווט rememberSwipeDismissableNavController()
כדי לאפשר העלאת הרמה של מצב
- רכיב
דוגמה לשימוש שבו יוצרים שני מסכים ומנווטים ביניהם:
val navController = rememberSwipeDismissableNavController() SwipeDismissableNavHost( navController = navController, startDestination = "start" ) { composable("start") { Column( horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center, modifier = Modifier.fillMaxSize(), ) { Button(onClick = { navController.navigate("next") }) { Text("Go") } } } composable("next") { Column( horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center, modifier = Modifier.fillMaxSize(), ) { Text("Swipe to go back") } } }
רכיב הניווט של Wear Compose נארז כספרייה נפרדת, כך שאפליקציות פשוטות של WearCompose שמטמיעות ניווט משלהם לא צריכות להסתמך על ספריית הניווט של Androidx.
שינויים ב-API
- עדכנו את
SwipeDismissableNavHost
כך שתתמוך ב-rememberSaveable
על ידי הגדרת זהות המפתח לרקע ולתוכן (I746fd) - הוספנו מתאם PositionIndicator שיכול לטפל ב-LazyListState (I21b88)
- עדכנו את SwipeToDismissBox כך שיתמוך ב-rememberSaveable (Ie728b)
- הוספנו תמיכה ב-reverseLayout ל-ScalingLazyColumn. כך אפשר להפוך את כיוון הגלילה ואת הפריסה (I9e2fc)
performGesture
ו-GestureScope
שהוצאו משימוש, והוחלפו ב-performTouchInput
וב-TouchInjectionScope
. (Ia5f3f, b/190493367)- שינינו את השם של VignetteValue ל-VignettePosition, ואת השם של VignetteValue.Both ל-VignettePosition.TopAndBottom. (I57ad7)
- שינינו את השם של ScalingLazyColumnState ל-ScalingLazyListState, את השם של ScalingLazyColumnItemInfo ל-ScalingLazyListItemInfo, את השם של ScalingLazyColumnLayoutInfo ל-ScalingLazyListLayoutInfo ואת השם של ScalingLazyColumnScope ל-ScalingLazyListScope, למקרה שנחליט להוסיף הטמעה של ScalingLazyRow בעתיד. (I22734)
תיקוני באגים
- עדכנו את המסמכים של CompactChip כדי לתאר מה קורה אם לא מציינים סמל או תווית. (I4ba88)
- ביצענו כמה שינויים ברכיבים של הכרטיסים ב-Wear. (I6b3d0)
- המרווח בין הכותרת לגוף בכרטיס TitleCard הופחת מ-8dp ל-2dp.
- גופן הכותרת של TitleCard השתנה מ-body ל-title3.
- שינינו את ההדרגה של הרקע בכרטיס כדי שהרקע ייראה כהה יותר.
גרסה 1.0.0-alpha05
1 בספטמבר 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha05
ו-androidx.wear.compose:compose-material:1.0.0-alpha05
משוחררים. גרסה 1.0.0-alpha05 מכילה את ההצהרות האלה.
שינויים ב-API
- סימון ArcPaddingValues בתור @Stable (I57deb)
- ScalingLazyColumnState מטמיע עכשיו את הממשק ScrollableState, שמעניק למפתחים גישה פרוגרמטית לגלילה ברכיב. (I47dbc)
תיקוני באגים
- צמצמנו את הריווח בין הסמל לטקסט ב-Chip וב-ToggleChip כדי להתאים אותם לעדכונים במפרט ממשק המשתמש. (I83802)
גרסה 1.0.0-alpha04
18 באוגוסט 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha04
ו-androidx.wear.compose:compose-material:1.0.0-alpha04
משוחררים. גרסה 1.0.0-alpha04 מכילה את ההצהרות האלה.
תכונות חדשות
- נוספו SwipeToDismissBox ו-modifier שניתן להחליק, שאפשר להשתמש בהם כדי לתמוך בתנועת החלקה שמאלה לימין לסגירה. הרכיב הזה לא תלוי ברכיבי הניווט, אבל הוא אמור לשמש כדי לצאת ממסך אחד ולעבור למסך אחר. הוספנו בדיקות אינטגרציה כדי להדגים את התכונה 'החלקה כדי לסגור'. (I7bbaa)
- הוספנו את הממשקים ScalingLazyColumnItemInfo ו-ScalingLazyColumnLayoutInfo לכיתה ScalingLazyColumnState כדי לאפשר למפתחים לדעת מהן המיקומים והגדלים בפועל של הפריטים ב-ScalingLazyColumn אחרי החלת השינוי. תיקנו גם באג בדרך שבה חישובי הגודל התבצעו כשהחפיפה של התוכן 'top' חלה על ScalingLazyColumn. (I27c07)
שינויים ב-API
- הוספת הכיתה CurvedTextStyle כדי לציין אפשרויות לעיצוב טקסט מעוקל. דומה ל-TextStyle, אבל עכשיו יש תמיכה רק ב-color, ב-fontSize וב-background. בעתיד נוסיף עוד אפשרויות עיצוב. (I96ac3)
- הוספנו את הממשקים ScalingLazyColumnItemInfo ו-ScalingLazyColumnLayoutInfo לכיתה ScalingLazyColumnState כדי לאפשר למפתחים לדעת מהן המיקומים והגדלים בפועל של הפריטים ב-ScalingLazyColumn אחרי החלת השינוי. תיקנו גם באג בדרך שבה חישובי הגודל התבצעו כשהחפיפה של התוכן 'top' חלה על ScalingLazyColumn. (I27c07)
- הוספנו את הערך
@ExperimentalWearMaterialApi
למערך הערכיםSwipeDismissTarget
, שהוא חלק מ-API שלSwipeToDismissBox
. (I48b5e)
תיקוני באגים
- נוספו חומרי בדיקה ל-SwipeToDismissBox (I9febc)
גרסה 1.0.0-alpha03
4 באוגוסט 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha03
ו-androidx.wear.compose:compose-material:1.0.0-alpha03
משוחררים. גרסה 1.0.0-alpha03 מכילה את ההצהרות האלה.
שינויים ב-API
- הוספנו את הרכיב CurvedText, שמאפשר למפתחים לכתוב טקסט בקלות בהתאם לעיקול של עיגול (בדרך כלל בקצה של מסך עגול) (Id1267)
- שינינו את השם של
CardDefaults.imageBackgroundPainter()
ל-CardDefaults.imageWithScrimBackgroundPainter()
כדי להבהיר שתמונה הרקע תהיה עם ציור של ריבוע שקוף מעלייה. (I53206) - הוספת הרכיב ScalingLazyColumn, שמספק רכיב רשימה ל-Material ב-Wear, שמציג תצוגת עין הדג שבה תוכן הרשימה קטן ונהיה שקוף ככל שהוא מתקרב לקצה הרכיב. (I7070c)
תיקוני באגים
- שינינו את צבע ברירת המחדל של התוכן appName בכרטיס האפליקציה בתגובה לעדכון של מפרט חוויית המשתמש. הצבע שמוגדר כברירת מחדל למאפיין appName הוא עכשיו
MaterialTheme.colors.onSurfaceVariant
. בנוסף, נוסף תיאור חסר למסמך הפרמטרים של משבצת הכותרת. (Ic4ad1)
גרסה 1.0.0-alpha02
21 ביולי 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha02
ו-androidx.wear.compose:compose-material:1.0.0-alpha02
משוחררים. גרסה 1.0.0-alpha02 מכילה את ההצהרות האלה.
תכונות חדשות
- הוספנו את הכיתה החדשה CurvedRow כדי להציג רכיבים מורכבים בפריסה של קשת (I29941)
- הוספנו סוג חדש של כרטיס לשימוש באפליקציות (TitleCard). הוספנו גם תמיכה בשימוש בתמונות כרקע של כרטיסים כדי להדגיש את התוכן שלהם (I53b0f)
שינויים ב-API
- הוספת תמיכה בחיבור רדיאלי ל-CurvedRow (בדומה לחיבור האנכי בשורה) (Id9de5)
- הוספת הכיתה החדשה CurvedRow לרכיבים מורכבים שמופיעים בפריסה בצורת קשת (I29941)
- הוספנו סוג חדש של כרטיס לשימוש באפליקציות (TitleCard). הוספנו גם תמיכה בשימוש בתמונות כרקע של כרטיסים כדי להדגיש את התוכן שלהם (I53b0f)
- הוספנו סמלי החלפת מצב (תיבת סימון, מתג ולחצני בחירה) ל-ToggleChipDefaults כדי להקל על המפתחים להגדיר ToggleChip ו-SplitToggleChips (I7b639)
- הוספת התוכן בתחילת הצ'יפ ובסופו עודכנה כך שתהיה עקבית ב-14dp, ללא קשר אם יש לצ'יפ סמל או לא (קודם היה 12dp אם יש סמל ו-14dp אם אין) (I34c86)
תיקוני באגים
- הוספת בדיקות ל-CurvedRow (I93cdb)
- קישור יחסי התלות של Wear Compose ל-Compose 1.0.0-rc01. (Ie6bc9)
- שינינו את האופן שבו מתבצעת הצביעה של תמונות הרקע בכרטיסים ובצ'יפים, כך שהתמונה תוחתוך במקום להתמתח כדי לשמור על הפרופורציות שלה. (I29b41)
- נוספו עוד הדגמות ובדיקות שילוב ל-Button ול-ToggleButton. (5e27ed2)
- הוספנו עוד בדיקות צ'יפים כדי לכסות את צבעי התוכן של imageBackgroundChips (Ia9183)
גרסה 1.0.0-alpha01
1 ביולי 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha01
ו-androidx.wear.compose:compose-material:1.0.0-alpha01
משוחררים. גרסה 1.0.0-alpha01 מכילה את ההצהרות האלה על ביצוע שינויים (commits).
תכונות חדשות
Wear Compose היא ספרייה מבוססת-Compose ב-Kotlin שתומכת בעיצוב Material Design ל-Wear, תוסף של Material Design למכשירים לבישים של WearOS. הגרסה הראשונה של האלפא כוללת הטמעות פונקציונליות מוקדמות של האפשרויות הבאות:
- עיצוב Material – מגדיר את הצבעים, הגופנים והצורות באופן עקבי בכל הרכיבים שבהם נעשה שימוש מהספרייה הזו.
- צ'יפ, צ'יפ קומפקטי – הצ'יפים הם בצורת אצטדיון ויש וריאציות שאפשר להשתמש בהן כדי להציג תוכן של סמל, תווית ותווית משנית.
- - ToggleChip, SplitToggleChip – סוג מיוחד של צ'יפ שכולל חריץ לסמל החלפת מצב דו-מצבי, כמו לחצן רדיו או תיבת סימון. בנוסף, ל-SplitToggleChip יש שני אזורים שניתן להקיש עליהם, אחד שניתן ללחוץ עליו והשני שניתן להחליף את המצב שלו.
- Button, CompactButton – לחצנים בצורת עיגול, עם חריץ תוכן יחיד לסמל או לטקסט מינימלי (עד 3 תווים).
- ToggleButton – לחצן שמפעיל או משבית פעולה, עם חריץ אחד לסמל או לטקסט מינימלי (עד 3 תווים).
- כרטיס, כרטיס אפליקציה – צורת כרטיס מלבנית עם פינות מעוגלות, עם שטחי תוכן כמו סמל האפליקציה, זמן, כותרת וגוף.
בגרסאות עתידיות נרחיב את קבוצת הווידג'טים ונוסיף תמיכה בבוררי Wear Material Design, בסליידרים, ברשימות, באינדיקטורים של דפים, בתיבת דו-שיח, באינדיקטורים של פס גלילה, בהודעות קצרות ובעוד רכיבים.
בנוסף, תהיה תמיכה בתכונות ספציפיות אחרות של מכשירים לבישים, כמו פריסות וטקסטים מעוגלים, וכן תמיכה ב-scaffolding כדי לעזור למפתחים ליצור בקלות אפליקציות או שכבות-על למכשירים לבישים.
העיצוב של Wear Compose Material מבוסס על אותם עקרונות כמו Compose Material, אבל הוא מיועד למכשירי לבישה. כשמפתחים אפליקציה למכשיר לבישה, צריך להשתמש בספריית Wear Compose Material במקום בספריית Compose Material.
שתי הספריות 'Material' הן ספריות נפרדות, ואין לשלב אותן באותה אפליקציה. אם מפתחים מוצאים את עצמם כוללים את ספריית Material של Compose ביחסי התלות שלהם, המשמעות היא שאחד מהמצבים הבאים מתקיים: א) חסרים רכיבים בספריית Material של Wear Compose. אפשר להודיע לנו מה חסר, או ב) הם משתמשים ברכיב שאנחנו לא ממליצים להשתמש בו במכשיר לביש.