با خوشحالی اعلام میکنیم که Material 3 Adaptive 1.2.0 اکنون پایدار است!
این نسخه منتشرشده همچنان بر پایه نسخههای قبلی ساخته میشود و پشتیبانی از نقاط گسست بیشتری برای کلاسهای اندازه پنجره و استراتژیهای جدید برای قرار دادن خودکار قابهای نمایشگر را گسترش میدهد.
ویژگیهای جدید در Material 3 Adaptive 1.2.0
این نسخه پایدار براساس پشتیبانی WindowManager 1.5.0 برای نقاط گسست بزرگ و خیلی بزرگ ساخته شده است و استراتژیهای جدید جاریسازی مجدد و شناور کردن را برای ListDetailPaneScaffold و SupportingPaneScaffold معرفی میکند.
کلاسهای اندازه پنجره جدید: بزرگ و بسیار بزرگ
WindowManager نسخه 1.5.0 دو نقطه شکست جدید برای کلاس اندازه پنجره عرض معرفی کرده است تا از پنجرههای بزرگتر از کلاس اندازه پنجره «ازهم بازشده» پشتیبانی کند. با افزودن پارامتر زیر به فراخوان currentWindowAdaptiveInfo() در پایگاه کدتان، میتوانید نقاط شکست «بزرگ» (L) و «خیلی بزرگ» (XL) را فعال کنید:
currentWindowAdaptiveInfo(supportLargeAndXLargeWidth = true)
این پرچم به کتابخانه امکان میدهد تا هرگاه نقاط شکست L و XL موردنیاز باشد، آنها را نیز برگرداند.
استراتژیهای تطبیقی جدید: جاریسازی مجدد و شناور کردن
چیدن محتوا و پانلهای نمایش در یک پنجره کار پیچیدهای است که باید عوامل زیادی را درنظر بگیرد، ازجمله اندازه پنجره. با کتابخانه «انطباقی Material 3» جدید، دو فناوری جدید میتوانند به شما کمک کنند با کمترین تلاش به چیدمان انطباقی دست یابید.
با جاریسازی مجدد، قابها وقتی اندازه پنجره یا نسبت ابعادی تغییر میکند دوباره چیده میشوند، و وقتی پنجره بهاندازه کافی پهن باشد، قاب دوم در کنار قاب اول قرار میگیرد، یا وقتی پنجره بلندتر باشد، قاب دوم در زیر قاب اول جاریسازی مجدد میشود. این تکنیک همچنین زمانی که پنجره کوچکتر میشود اعمال میشود: محتوا به پایین جریان مییابد.
جاریسازی مجدد قاب براساس اندازه پنجره
اگرچه جاریسازی مجدد در بسیاری از موارد گزینه فوقالعادهای است، ممکن است موقعیتهایی وجود داشته باشد که محتوا نیاز داشته باشد یا به کنار پنجره چسبانده شود یا در بالای آن معلق شود. استراتژی شناور کردن نه تنها محتوا را چسبان میکند، بلکه به شما امکان میدهد ویژگیهایی مثل قابلیت کشیدن، قابلیت تغییر اندازه، و حتی زمینه پسزمینه را سفارشیسازی کنید.
شناور کردن قاب از کنار به مرکز براساس نسبت ابعادی
هر دو استراتژی جریان و شناور را میتوان بااستفاده از پارامتر adaptStrategies در داخل سازنده Navigator تعریف کرد، و هر دو استراتژی را میتوان در فهرست-جزئیات و قاب پشتیبان scaffolds اعمال کرد:
val navigator = rememberListDetailPaneScaffoldNavigator<Nothing>( adaptStrategies = ListDetailPaneScaffoldDefaults.adaptStrategies( detailPaneAdaptStrategy = AdaptStrategy.Reflow( reflowUnder = ListDetailPaneScaffoldRole.List ), extraPaneAdaptStrategy = AdaptStrategy.Levitate( alignment = Alignment.Center ) ) )
برای کسب اطلاعات بیشتر درباره نحوه استفاده از این استراتژیهای تطبیقی جدید، وبسایت Material و کد نمونه کامل را در GitHub ببینید.
-
اخبار محصولبهعنوان توسعهدهندگان Android، وقتی نوبت به انتخاب عاملها، مدلهای زبانی بزرگ، ابزارها، و میاناهای خط فرمان (CLI) میرسد که برای توسعه نرمافزار استفاده میکنید، گزینههای زیادی دارید. هدف ما این است که به شما کمک کنیم برنامههای Android زیبا و با کیفیت بالا بسازید، مهم نیست که چگونه میخواهید بسازید.
Simona Milanovic • ۴ دقیقه خواندن -
اخبار محصولدر Google Play، ما بهطور مداوم پلاتفرم اشتراک خود را گسترش میدهیم تا به شما کمک کنیم رشد کنید، با مدلهای کسبوکار جدید سازگار شوید، و دقیقاً در جایی که کاربران شما هستند با آنها ارتباط برقرار کنید.
Sheenam Mittal • ۴ دقیقه خواندن -
اخبار محصولسال گذشته، Android Studio برای هر مدل هوش مصنوعی باز شد. امروز، با معرفی پشتیبانی از انتخاب شما برای عاملهای کدنویسی، گام بعدی را برمیداریم.
Matthew Warner • ۳ دقیقه خواندن
هر هفته جدیدترین اطلاعات آماری توسعه Android را در صندوق ورودیتان دریافت کنید.