חדשות על המוצר

‫Material 3 Adaptive 1.2.0 היא גרסה יציבה

משך הקריאה: דקה אחת
לצפייה בפרופיל של רוב אורג'יו
Rob Orgiu מהנדס קשרי מפתחים

אנחנו שמחים להודיע שגרסה 1.2.0 של Material 3 Adaptive יציבה עכשיו.

הגרסה הזו ממשיכה להתבסס על היסודות של הגרסאות הקודמות, ומרחיבה את התמיכה ליותר נקודות עצירה (breakpoint) של מחלקות גודל חלון ואסטרטגיות חדשות להצבה אוטומטית של חלוניות תצוגה.

מה חדש ב-Material 3 Adaptive 1.2.0

הגרסה היציבה הזו מבוססת על התמיכה של WindowManager 1.5.0 בנקודות עצירה גדולות וגדולות במיוחד, ומציגה את האסטרטגיות החדשות של הזרמה מחדש וריחוף עבור ListDetailPaneScaffold ו-SupportingPaneScaffold. 

מחלקות חדשות של גודל חלון: גדול וגדול מאוד

newwindow.png


ב-WindowManager 1.5.0 הוספנו שתי נקודות עצירה חדשות לקטגוריית רוחב החלון, כדי לתמוך בחלונות גדולים יותר מאלה שבקטגוריית החלון המורחב. כדי להפעיל את נקודות העצירה הגדולה (L) והגדולה מאוד (XL), צריך להוסיף את הפרמטר הבא לקריאה ל-currentWindowAdaptiveInfo() בבסיס הקוד:

currentWindowAdaptiveInfo(supportLargeAndXLargeWidth = true)

הדגל הזה מאפשר לספרייה להחזיר גם נקודות עצירה בגודל L ו-XL בכל פעם שצריך.

אסטרטגיות חדשות של פריסה דינמית: הזרמה מחדש וריחוף

סידור התוכן והחלוניות בחלון הוא משימה מורכבת שצריך להביא בחשבון גורמים רבים, החל מגודל החלון. בספרייה החדשה Material 3 Adaptive יש שתי טכנולוגיות חדשות שיכולות לעזור לכם ליצור פריסה דינמית במינימום מאמץ.

בפריסה מחדש, החלוניות מסודרות מחדש כשגודל החלון או יחס הגובה-רוחב משתנים. חלונית שנייה ממוקמת לצד החלונית הראשונה כשהחלון רחב מספיק, או שהחלונית השנייה ממוקמת מתחת לחלונית הראשונה כשהחלון גבוה יותר. השיטה הזו רלוונטית גם כשהחלון קטן יותר: התוכן זורם מחדש לתחתית.

material.jpg

התאמת חלונית לגודל החלון

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


 

material2.jpg

העברת חלונית מהצד למרכז בהתאם ליחס הגובה-רוחב

אפשר להצהיר על שתי האסטרטגיות, flow ו-levitate, בתוך ה-constructor של Navigator באמצעות הפרמטר adaptStrategies, ואפשר להחיל את שתי האסטרטגיות על רשימת פרטים ועל חלונית תמיכה scaffolds:

val navigator = rememberListDetailPaneScaffoldNavigator<Nothing>(
        adaptStrategies = ListDetailPaneScaffoldDefaults.adaptStrategies(
            detailPaneAdaptStrategy = AdaptStrategy.Reflow(
                reflowUnder = ListDetailPaneScaffoldRole.List
            ),
            extraPaneAdaptStrategy = AdaptStrategy.Levitate(
                alignment = Alignment.Center
            )
        )
    )


 

כדי ללמוד איך להשתמש באסטרטגיות החדשות האלה, אפשר לעיין באתר Material ובקוד לדוגמה המלא ב-GitHub.

כותב/ת המסמך:
להמשך קריאה