Xamarin.Forms调用吐司

原创 2017年08月15日 22:15:44

     大家好,今天给大家介绍Xamarin.Forms底下调用吐司。


    所谓的吐司,就是Toast,安卓底下有自带的吐司Toast,就是给用户提示信息,并且过一段时间后会自动消失。但自带的吐司有些简陋,今天我们要讲的是引用第三方库,下面具体介绍:


1.分平台底下下载程序包:

1.1 安卓平台:

安卓吐司

1.2 iOS平台:

iOS吐司


2.在可移植平台底下创建接口:

public interface iHUD//吐司接口
   {
       void Show_Status_Message(string StatusMessage);//显示正在加载状态
       void Show_success(string Message);//显示成功
       void Show_Error(string Message);//显示错误
       void Show_Toast(string Message);//显示自定义吐司
       void Show_Dismiss();//显示取消,和Status_Message配套使用
   }

3.分平台底下实现接口:

3.1 安卓平台:

using AndroidHUD;
[assembly:Xamarin.Forms.Dependency(typeof(UIApp.Droid.AndroidHUD))]
namespace UIApp.Droid
{
    public class AndroidHUD : iHUD
    {
        /// <summary>
        /// 关闭
        /// </summary>
        public void Show_Dismiss()
        {
            AndHUD.Shared.Dismiss();
        }
        /// <summary>
        /// 显示一个错误图像与一个模糊的背景的消息,并自动排除后2秒
        /// </summary>
        /// <param name="Message"></param>
        public void Show_Error(string Message)
        {
            AndHUD.Shared.ShowError(Forms.Context,Message,MaskType.Clear, TimeSpan.FromSeconds(2));
        }
        /// <summary>
        /// 显示旋转 + 文本
        /// </summary>
        /// <param name="StatusMessage"></param>

        public void Show_Status_Message(string StatusMessage)
        {
            AndHUD.Shared.Show(Forms.Context,StatusMessage,-1,MaskType.Clear);
        }
        /// <summary>
        /// 一个成功的图像显示一个消息,有一个明确的背景,并自动排除后2秒
        /// </summary>
        /// <param name="Message"></param>

        public void Show_success(string Message)
        {
            AndHUD.Shared.ShowSuccess(Forms.Context, Message, MaskType.Clear, TimeSpan.FromSeconds(2));
        }
        /// <summary>
        /// 显示一个安卓风格的吐司
        /// </summary>
        /// <param name="Message"></param>

        public void Show_Toast(string Message)
        {
            AndHUD.Shared.ShowToast(Forms.Context, Message, MaskType.Clear, TimeSpan.FromSeconds(2));
        }
    }
}

3.2 iOS平台

using BigTed;
[assembly:Xamarin.Forms.Dependency(typeof(UIApp.iOS.iOSHUD))]
namespace UIApp.iOS
{
    public class iOSHUD : iHUD
    {
        public void Show_Dismiss()
        {
            BTProgressHUD.Dismiss();
        }

        public void Show_Error(string Message)
        {
            BTProgressHUD.ForceiOS6LookAndFeel = true;
            BTProgressHUD.ShowErrorWithStatus(Message,2000);
        }

        public void Show_Status_Message(string StatusMessage)
        {
            BTProgressHUD.ForceiOS6LookAndFeel = true;
            BTProgressHUD.ShowSuccessWithStatus(StatusMessage);
        }

        public void Show_success(string Message)
        {
            BTProgressHUD.ForceiOS6LookAndFeel = true;
            BTProgressHUD.ShowSuccessWithStatus(Message,2000);
        }

        public void Show_Toast(string Message)
        {
            BTProgressHUD.ForceiOS6LookAndFeel = true;
            BTProgressHUD.ShowErrorWithStatus(Message,2000);
        }
    }
}

    接口实现里面可以调节吐司提示存在的时间,这里设置成2秒,需要注意的是,这里的吐司提示会占用你2秒的时间,也就是说,在提示的这两秒内,你对应用的操作都是无效的(比如点击屏幕,按物理返回键啥的都没用)。

4. 可移植平台底下调用:

 iHUD hud = DependencyService.Get<iHUD>();
hud.Show_success("成功!");
hud.Show_Error("失败!");
hud.Show_Status_Message("正在加载,请稍后......");
hud.Show_Dismiss();

    这里要注意的是Show_Status_Message()和Show_Dismiss()要配套使用,一个是提示加载,等到加载完后调用Show_Dissmiss(),不然StatusMessage的提示会一直在。

Android基础入门教程——2.5.1 Toast(吐司)的基本使用

Android基础入门教程——2.5.1 Toast(吐司)的基本使用 本节引言: 1.直接调用Toast类的makeText()方法创建 2.通过构造方法来定制Toast: 1.定义一个带有图片的T...
  • zpj779878443
  • zpj779878443
  • 2015年09月26日 11:46
  • 7548

android自定义吐司的使用

先上效果图: public class CustomTusi extends Activity{ @Override protected void onCreate(Bundle savedIn...
  • jiyidehao
  • jiyidehao
  • 2016年05月19日 12:25
  • 870

xamarin.forms跳转android native并传参

xamarin开发过程中,能写在pcl的尽量写在pcl,提高复用率,但有时候因为一些已知的原因,不得不去使用native,xamarin官方github上有提供这部分源码Forms2Native供参考...
  • rucilengluo
  • rucilengluo
  • 2016年11月02日 19:20
  • 1331

Xamarin.Forms 引用 放在 PCL 中的图片

今天状态及其不好,见谅,Xamarin 技术交流 (偏向 xamarin.android): 1092417123PCL 中图片资源格式官方解释 : Embedded ImagesEmbedded ...
  • u011033906
  • u011033906
  • 2017年10月28日 10:57
  • 263

自定义吐司以及Toast的各种用法,详解。教你学会使用各种各样的Toast

package com.david_Custoast; import com.david_Custoast.R; import android.app.Activity; import and...
  • qq_21376985
  • qq_21376985
  • 2016年03月21日 18:54
  • 1605

Xamarin.Forms入门-使用 Xamarin.Forms 来创建跨平台的用户界面

Xamarin.Forms 是一个跨平台的、基于原生控件的UI工具包,开发人员可以轻松的创建适用于 Android,iOS 以及 Windows Phone的用户界面。Xamarin.Forms 通过...
  • powertoolsteam
  • powertoolsteam
  • 2015年03月10日 10:17
  • 2125

xamarin.forms中自定义控件的android实现

之前有介绍了forms和native的交互处理,为了使用第三方的android插件,做了forms到native的跳转,这时会有个性能问题:forms和native的出入口必须为指定的MainActi...
  • rucilengluo
  • rucilengluo
  • 2016年12月06日 15:43
  • 1350

基于IOS的一个吐司提示框

先看效果 基于一个IOS的吐司提示框,简单易用     [[ToastmakeText:[NSStringstringWithFormat:@"呵呵"]]showWithType:...
  • hahahakonghee
  • hahahakonghee
  • 2013年04月22日 19:11
  • 2940

Xamarin.Forms入门困扰与解决方式-第二篇

Xamarin.Forms入门困扰与解决方式-第二篇 一般項目中的按鈕都是用圖做得美美的(不會像第一篇中的按鈕),但是Xamarin.Forms中的Image控件默認是無法接受命令或觸碰事件的,WP...
  • Thinkpower_Support
  • Thinkpower_Support
  • 2015年02月09日 11:30
  • 1465

【XamarinForms开发APP】2、一个应用程序的剖析(Anatomy of an app)<上>

1 引言 一个现代的用户接口通常是由各种各样的可视对象构成的。在不同的操作系统中,这些可视对象有着不同的名称,如:controls, elements, views, widgets— 但是他们的作...
  • abbydong
  • abbydong
  • 2016年05月11日 15:37
  • 1878
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Xamarin.Forms调用吐司
举报原因:
原因补充:

(最多只允许输入30个字)