اخبار محصول

ماده ۳ تطبیقی ​​۱.۲.۰ پایدار است

مطالعه ۲ دقیقه‌ای
Rob Orgiu
مهندس روابط توسعه‌دهنده

با کمال افتخار اعلام می‌کنیم که نسخه ۱.۲.۰ نرم‌افزار Material 3 Adaptive اکنون پایدار شده است!

این نسخه همچنان بر پایه نسخه‌های قبلی بنا شده و پشتیبانی از نقاط شکست بیشتر برای کلاس‌های اندازه پنجره و استراتژی‌های جدید برای قرار دادن خودکار پنل‌های نمایش را گسترش می‌دهد.

ویژگی‌های جدید متریال ۳ آداپتیو ۱.۲.۰

این نسخه پایدار بر پایه پشتیبانی WindowManager 1.5.0 از نقاط شکست بزرگ و بسیار بزرگ ساخته شده است و استراتژی‌های جدید reflow و levitate را برای ListDetailPaneScaffold و SupportingPaneScaffold معرفی می‌کند.

کلاس‌های جدید اندازه پنجره: بزرگ و خیلی بزرگ

پنجره جدید.png


WindowManager 1.5.0 دو نقطه توقف جدید برای کلاس width window size معرفی کرد تا از پنجره‌های حتی بزرگتر از کلاس Expanded window size پشتیبانی کند. نقاط توقف Large (L) و Extra-large (XL) را می‌توان با اضافه کردن پارامتر زیر به فراخوانی currentWindowAdaptiveInfo() در کدبیس خود فعال کرد:

currentWindowAdaptiveInfo(supportLargeAndXLargeWidth = true)

این پرچم به کتابخانه این امکان را می‌دهد که نقاط توقف L و XL را نیز در صورت نیاز برگرداند.

استراتژی‌های تطبیقی ​​جدید: جریان مجدد و شناور شدن

چیدمان محتوا و پنل‌های نمایش در یک پنجره، کار پیچیده‌ای است که باید عوامل زیادی را در نظر بگیرد، از جمله اندازه پنجره. با کتابخانه جدید Material 3 Adaptive، دو فناوری جدید می‌توانند به شما کمک کنند تا با حداقل تلاش، به یک طرح‌بندی تطبیقی ​​دست یابید.

با reflow ، وقتی اندازه پنجره یا نسبت ابعاد تغییر می‌کند، پنجره‌ها دوباره مرتب می‌شوند، وقتی پنجره به اندازه کافی عریض باشد، یک پنجره دوم در کنار پنجره اول قرار می‌گیرد، یا وقتی پنجره بلندتر باشد، پنجره دوم زیر پنجره اول reflow می‌شود. این تکنیک همچنین وقتی پنجره کوچک‌تر می‌شود نیز اعمال می‌شود: محتوا به پایین reflow می‌شود.

مواد.jpg

تغییر رنگ یک صفحه بر اساس اندازه پنجره

اگرچه در بسیاری از موارد، reflowing یک گزینه فوق‌العاده است، اما ممکن است موقعیت‌هایی وجود داشته باشد که در آن‌ها محتوا یا باید به یک طرف پنجره متصل شود یا روی آن شناور شود . استراتژی شناور کردن نه تنها محتوا را متصل می‌کند، بلکه به شما امکان می‌دهد ویژگی‌هایی مانند قابلیت کشیدن، تغییر اندازه و حتی پوشش پس‌زمینه را سفارشی کنید.


متریال2.jpg

معلق کردن یک صفحه نمایش از کنار به مرکز بر اساس نسبت ابعاد

هر دو استراتژی flow و levitate را می‌توان با استفاده از پارامتر adaptStrategies درون سازنده‌ی Navigator تعریف کرد و هر دو استراتژی را می‌توان روی list-detail و scaffolds pane پشتیبان اعمال کرد:

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


برای کسب اطلاعات بیشتر در مورد چگونگی بهره‌گیری از این استراتژی‌های تطبیقی ​​جدید، به وب‌سایت Material و نمونه کد کامل در GitHub مراجعه کنید.

    نوشته شده توسط:

    ادامه مطلب