產品新訊

Material 3 Adaptive 1.2.0 穩定版

2 分鐘閱讀
Rob Orgiu
開發人員關係工程師

我們很高興宣布,Material 3 Adaptive 1.2.0 現已推出穩定版!

這個版本延續先前版本的基礎,擴大支援更多視窗大小類別的中斷點,並提供自動放置顯示窗格的新策略。

Material 3 自動調整式 1.2.0 版的新功能

這個穩定版是以 WindowManager 1.5.0 為基礎,支援大型和特大型中斷點,並為 ListDetailPaneScaffoldSupportingPaneScaffold 導入新的重排和懸浮策略。 

新增視窗大小類別:大型和特大型

newwindow.png


WindowManager 1.5.0 針對寬度視窗大小類別推出兩個新中斷點,支援比「展開」視窗大小類別更大的視窗。如要啟用「大型 (L)」和「特大 (XL)」中斷點,請在程式碼庫的 currentWindowAdaptiveInfo() 呼叫中加入下列參數:

currentWindowAdaptiveInfo(supportLargeAndXLargeWidth = true)

這個標記可讓程式庫在需要時傳回 L 和 XL 中斷點。

全新適應性策略:重排和懸浮

在視窗中排列內容和顯示窗格是複雜的工作,需要考量許多因素,首先是視窗大小。有了全新的 Material 3 適應性程式庫,您可以使用兩項新技術,以最少的心力打造適應性版面配置。

重排功能會在視窗大小或顯示比例變更時重新排列窗格,在視窗夠寬時將第二個窗格放在第一個窗格旁邊,或在視窗較高時將第二個窗格放在第一個窗格下方。視窗縮小時也適用這項技巧:內容會重新排版至底部。

material.jpg

根據視窗大小重新排列窗格

雖然重排功能在許多情況下都非常實用,但有時內容可能需要固定在視窗側邊,或浮動在視窗頂端。懸浮策略不僅會將內容停駐在螢幕上,還能讓你自訂可拖曳性、可調整大小等功能,甚至是背景遮罩。


 

material2.jpg

根據顯示比例,將窗格從側邊浮動到中央

您可以使用 adaptStrategies 參數,在 Navigator 建構函式中宣告流程和懸浮策略,並將這兩種策略套用至清單詳細資料和支援窗格 scaffolds

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


 

如要進一步瞭解如何運用這些新的自適應策略,請參閱 Material 網站和 GitHub 上的完整程式碼範例

撰寫者:

繼續閱讀