感謝IT之家網(wǎng)友 鳶一雨音 的原創(chuàng)投稿
一段時間之前,我已經(jīng)投稿兩篇,分別講述了如何實現(xiàn)流暢設(shè)計下的Material和Motion,但那是在Win10 SDK Build 16190之前。微軟發(fā)布了Windows10 SDK Build 16190之后,新加入了一個筆刷:AcrylicBrush(亞克力筆刷)。
這個筆刷能讓開發(fā)人員更快地創(chuàng)建透明的應(yīng)用背景、方便地調(diào)整透明值以及顏色,不再需要一個單獨的UIElement來承載透明的背景。
注意:以下實例均在Win10 SDK Build 16232版本下實現(xiàn)。
簡單實例:
創(chuàng)建一個空白的UWP應(yīng)用程序,目標SDK應(yīng)該改為等于或高于16190的版本。鑒于AcrylicBrush使用起來非常方便,我們的例子不會涉及到C#代碼,而僅僅是XAML層面的內(nèi)容。
修改XAML代碼如下:
其中:重要的就是這個名為AcrylicBrush的筆刷。我們像使用其它筆刷一樣使用它,它擁有若干個重要的屬性,其中BackgroundSource屬性只能從枚舉值HostBackdrop和Backdrop中選取,它們分別表示這個亞克力筆刷的源來自應(yīng)用下的背景還是控件下的背景。TintColor則是亞克力的顏色,TintOpacity決定了亞克力的透明程度。我們執(zhí)行代碼,觀察效果:
我們僅僅使用XAML就實現(xiàn)了接近完整的流暢設(shè)計光照和材質(zhì)效果。
總結(jié):AcrylicBrush是微軟為流暢設(shè)計體系作準備的一個新內(nèi)容。它的出現(xiàn)意味著不會有新的專門的控件來支持流暢設(shè)計體系,而要求開發(fā)者合理為自己原有的控件應(yīng)用AcrylicBrush筆刷。但是控件會不會自動應(yīng)用這個筆刷還是未可知的,不過這種使用筆刷的方式要比我的前面幾篇文章講過的使用C#代碼的方式方便很多,雖然效率可能并沒有提升。
廣告聲明:文內(nèi)含有的對外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。