這次給大家介紹兩個比較好用的提示插件,如成功、等待、錯誤提示。
準備:
1、新建一個Prism Xamarin.Forms項目;
2、右擊解決方案,添加NuGet包:
1)Acr.UserDialogs(全部安裝);
2)AndHUD(安卓項目安裝),BTProgressHUD(iOS項目安裝);
設計:
1、我們先介紹第一種Acr.UserDialogs,這個提示插件其實是基于AndHUD和BTProgressHUD,就是說Acr.UserDialogs就是通過實現(xiàn)DependencyService,來封裝調用這兩個控件的,使用非常簡單,而且在PCL中任意位置隨意調用,使用前,需先在Android項目的MainActivity中注冊(iOS不需要),如果在MainActivity中引用不成功,或不能智能提示的,請重新打開VS即可,如圖:
注冊完成后,我們就可以使用了。
編寫代碼:
1)在MainPage中,添加一個測試按鈕,并綁定TestCommand操作
<StackLayout HorizontalOptions="Center" VerticalOptions="Center"> <Button Text="測試" x:Name="testBtn" Command="{Binding TestCommand}"></Button> </StackLayout>
2)在MainPageViewModel中,添加一個TestCommand屬性,里面調用了幾個常用的提示,其他的大家可以動手嘗試。
View Code
2、第二種,由于AndHUD只支持安卓,而BTProgressHUD支持iOS(由于BTProgressHUD和Acr.UserDialogs同時使用了BigTed命名空間,會沖突,因此請先把iOS項目下的Acr.UserDialogs卸載)因此需要利用DependencyService來注冊控件,方可使用:
1)在PCL下,創(chuàng)建一個IHUDProvider接口,代碼如下:
View Code
2)在Android目錄下,創(chuàng)建一個HUDProvider類,實現(xiàn)IHUDProvider接口,代碼如下:
View Code
3)在iOS項目下,創(chuàng)建一個HUDProvider類,實現(xiàn)IHUDProvider接口,代碼如下:
View Code
4)回到MainPage中,添加一個新的測試按鈕,并綁定TestCommand2命令
<StackLayout HorizontalOptions="Center" VerticalOptions="Center"> <Button Text="測試" x:Name="testBtn" Command="{Binding TestCommand}"></Button> <Button Text="測試2" x:Name="testBtn2" Command="{Binding TestCommand2}"></Button> </StackLayout>
5)在MainPageViewModel下,添加TestCommand2命令
View Code
6)生成并運行安卓AVD模擬器
可以看出,除了樣式不相同以外,基本提示一致,因此實際開發(fā)項目中,我們可能推薦Acr.UserDialogs控件,但是我們也可以體驗一下如何利用DependencyService.Get<>來實現(xiàn)安卓和iOS的自定義控件
Empower every person and every organization achieve more in my blog.
標簽: Xamarin.Forms, Xamarin.Android, Prism, NavigationService, Xamarin.iOS
http://www.cnblogs.com/loda7023link/p/6748227.html