Xamarin.Forms 4.0 發布了,這是一個主要版本,帶來了一些重大變化,包括 Shell 正式版、默認啟用 Android 快速渲染器、統一圖像源類型與控制 Tab 順序提高便捷性。
Shell 正式推出
2018 年 12 月在 Microsoft Connect() 上發布的 Shell 預覽版現在已經正式集成在 Xamarin.Forms 4.0 中,從表面上看,Shell 提供了一種非常簡單的語法來建立應用程序的彈出菜單和標籤菜單。除了現有的導航服務之外,它還引入了強大的基於路由的 URI 導航服務。
此外,Shell 更加強大的地方在於底層,所有渲染器都實現了「快速渲染器」模式,數據模板和渲染器可以輕鬆擴展所有內容。這個新架構為未來的 Xamarin.Forms 開發奠定了基礎,可以實現更具表現力的動畫、過渡與交互。
快速開始使用 Shell 可以使用 Visual Studio 2019 中的新 Shell 模板,有關 Shell 的更多具體信息查看:
默認啟用 Android 快速渲染器
2.4.0 版本中為 Button、Image 和 Label 引入了 Android 快速渲染器以大幅減少渲染這些控制項所需的視圖組數量,事實證明,這種模式與預期的一樣有效,並且它們現在已經成為 Shell 實現的渲染器的新性能標準。
所以在此版本中,現在默認啟用 Android 快速渲染器。如果需要繼續使用舊式渲染器,只需要在 MainActivity.cs 中添加一項標誌以選擇加入舊式渲染器:
global::Xamarin.Forms.Forms.SetFlags("UseLegacyRenderers");
統一圖像源
不同控制項中的 icon 和圖像源並未都實現相同的類型,3.5.0 版本中引入了 FontImageSource,它使得裝飾應用變得非常容易和有趣,但是卻無法在任何地方使用。不過此版本所有地方都實現了 ImageSource,所以現在可以在任何地方使用 FontImageSource、嵌入式資源、文件與 URI。
Button.Image // from FileImageSource
MenuItem.Icon // from FileImageSource
NavigationPage.TitleIcon // from FileImageSource
Page.BackgroundImage // from string
Page.Icon // from FileImageSource
Slider.ThumbImage // from FileImageSource
提高便捷性
Xamarin.Forms 是一個原生的跨平台框架,這意味著開發者可以很方便地得到原生輔助功能支持,此版本通過直接在 Xamarin.Forms 中控制焦點順序,進一步提高了操作便捷性。比如當你從一個頁面導航到另一個頁面時,屏幕閱讀器需要知道哪個元素處於焦點地位,現在為了執行這一操作,可以在 VisualElement 上設置 TabIndex 以控制焦點順序。
發布公告:
[admin
]