<address id="xpjh9"><listing id="xpjh9"><meter id="xpjh9"></meter></listing></address>

<address id="xpjh9"><address id="xpjh9"><listing id="xpjh9"></listing></address></address>
<noframes id="xpjh9">
<noframes id="xpjh9">

<address id="xpjh9"><address id="xpjh9"><listing id="xpjh9"></listing></address></address>
    <form id="xpjh9"></form><address id="xpjh9"><listing id="xpjh9"><menuitem id="xpjh9"></menuitem></listing></address>

      <noframes id="xpjh9">
      VB.net 2010 視頻教程 VB.net 2010 視頻教程 VB.net 2010 視頻教程
      SQL Server 2008 視頻教程 c#入門經典教程 Visual Basic從門到精通視頻教程
      當前位置:
      首頁 > 編程開發 > C#編程 >
      • C#教程之Xamarin.Forms之UserDialogs 重制版本

      • 2019-03-26 20:42 來源:未知

      在 forms 里面,目前使用比較多的彈出組件是 Acr.UserDialogs ,但是這個組件有些小問題,比如 loading .hide 會同時把 toast 給一起關掉,android 下的 toast 希望是 安卓原生的toast 樣子,而不是 底部彈出一個橫條(其實是 android 的 Snackbar),對于 ios 的toast 也希望類似android 的樣子,但是 Acr.UserDialogs 里面 toast 是 snackbar 樣式,這并不符合產品需求情況。

       

      GitHub地址: https://github.com/jxnkwlp/UserDialogs2

       

      因此,我重制了一個版本, 包地址:https://www.nuget.org/packages/Passingwind.UserDialogs/

      對 toast 和 snackbar 做了區分,同時 loading 的關閉不會影響 toast 。

       

      接口有這些:

      目前沒有異步接口,因為覺得 Acr.UserDialogs  的 異步接口和同步接口 對比起來不太好理解。

      復制代碼
      void Toast(string message);
      
      void Toast(ToastConfig config);
      
      IDisposable Snackbar(string message, Action action = null);
      
      IDisposable Snackbar(SnackbarConfig config);
      
      void Alert(string message);
      
      void Alert(AlertConfig config);
      
      IDisposable ActionSheet(ActionSheetConfig config);
      
      IDisposable Loading(LoadingConfig config);
      
      IProgressDialog Progress(ProgressConfig config);
      
      void Prompt(PromptConfig config);
      
      void Form(PromptFormConfig config);
      復制代碼

       

      使用方法:

      各個接口 Config 都可以先設置默認值,比如 alert 里面 的確定按鈕,可以全局設置為 “確定”

      AlertConfig.DefaultOkText = "確定"; 

       

      這樣設置后,就不用每次使用alert 的時候去設置 確定按鈕的文本。

      UserDialogs.Instance.Alert(new AlertConfig("您當前無權限操作!").AddOkButton());

       

      相關依賴:

      Toast:  在android 上是原生的 toast 組件,在ios 上使用 MBProgressHUD

      Snackbar:  在android 上是原生的 snackbar 組件,在ios 上使用 TTGSnackbar

      Progress,Loading  在 android 上使用的是 KProgressHUD (https://github.com/jxnkwlp/KProgressHUD.csharp) 這個是代碼翻譯版本,  在 ios 上是使用 MBProgressHUD

       

      更多說明可以查看 readme 文件 https://github.com/jxnkwlp/UserDialogs2

       

      最后,覺得好給個star 再走唄

      相關教程
      江苏快3 蚌埠 | 如东 | 酒泉 | 九江 | 乌兰察布 | 上饶 | 灵宝 | 和田 | 临海 | 克拉玛依 | 贵港 | 赤峰 | 琼海 | 偃师 | 朝阳 | 宣城 | 灌云 | 泰安 | 黄山 | 灵宝 | 宜昌 | 荣成 | 南京 | 金坛 | 秦皇岛 | 三亚 | 东营 | 玉环 | 宁国 | 临沂 | 台山 | 泉州 | 漳州 | 浙江杭州 | 姜堰 | 张掖 | 博尔塔拉 | 高密 | 抚顺 | 馆陶 | 包头 | 滕州 | 青海西宁 | 德清 | 广安 | 西双版纳 | 天门 | 厦门 | 威海 | 恩施 | 萍乡 | 沧州 | 洛阳 | 钦州 | 河北石家庄 | 丹阳 | 汕头 | 毕节 | 遵义 | 吐鲁番 | 益阳 | 曹县 | 江门 | 黔南 | 鸡西 | 宜昌 | 南通 | 嘉善 | 伊犁 | 宁国 | 定州 | 济南 | 黔西南 | 葫芦岛 | 延安 | 玉树 | 温岭 | 绍兴 | 玉林 | 巴音郭楞 | 大兴安岭 | 余姚 | 吉林 | 余姚 | 莆田 | 丽江 | 玉环 | 蚌埠 | 厦门 | 宜宾 | 三河 | 南充 | 玉林 | 偃师 | 鹰潭 | 浙江杭州 | 余姚 | 淮北 | 霍邱 | 吉安 | 台南 | 潍坊 | 佳木斯 | 滨州 | 神木 | 广西南宁 | 玉树 | 晋城 | 如皋 | 海北 | 黑河 | 常州 | 吉林长春 |