Hi,欢迎来到华清远见移动互联网学院官网!国内王牌JAVAEE培训、Android培训、HTML5培训、UI培训、JAVA培训、VR培训机构!

  • 400-611-6270
  • 新浪微博
  • 微信
您当前的位置:移动互联网学院 > Android开发 > Android Toast用法教程

Android Toast用法教程

时间:2017-04-14 10:54 来源:Android开发学习网

Toast是Android中用来显示显示信息的一种机制,和Dialog不一样的是,Toast是没有焦点的,而且Toast显示的时间有限,过一定的时间就会自动消失。今天就为大家讲解一下Android Toast的使用方法。

如何在Android程序中添加Toast?

用 make() 方法创建一个 Toast 实例,然后调用 show() 方法。

Toast.makeText(context, "No network connection.", duration).show();

Duration

使用 makeText() 方法的 duration 参数 或者 setDuration 方法指定 Snackbar 在屏幕上显示多长时间。

// 你只能使用这两个预定义的常量

duration = Toast.LENGTH_SHORT; // 2000 秒

duration = Toast.LENGTH_LONG; // 3500 秒

toast.setDuration(duration);

Cancel

可以在任何时候使用 cancel() 方法手动的去隐藏 Toast 。

Toast toast= Toast.make(view, text, duration).show();

toast.cancel(); //隐藏吐司

如果在它显示的时候关闭它或者在不想显示的时候它仍然显示,通常你不需要去调用这个方法。它会在持续适当的时间之后自己消失。

Positioning

用 setGravity() 可以改变 Toast 的显示位置。

int gravity = Gravity.CENTER; // Toast在屏幕中的位置,当前属性设置在屏幕中间

int xOffset = 0; // 水平偏移距离

int yOffset = 0; // 垂直偏移距离

Toast toast= Toast.make(view, text, duration);

toast.setGravity(gravity, xOffset, yOffset);

如何设置Toast样式?

用代码直接设置Toast样式

// 创建 Toast 实例

Toast toast = Toast.makeText(context, text, duration);

// 设置消息颜色

TextView textView= (TextView) toast.getView().findViewById(android.R.id.message);

textView.setTextColor(Color.YELLOW);

// 设置背景颜色

toast.getView().setBackgroundColor(getResources().getColor(R.color.indigo));

通过自定义 View设置Toast样式

I. 在 layout.xml 文件内的任意位置声明你的自定义 View。

xmlns:android="http://schemas.android.com/apk/res/android"

android:id="@+id/txtMessage"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:drawableStart="@drawable/ic_report_problem"

android:drawablePadding="8dp"

android:paddingTop="8dp"

android:paddingBottom="8dp"

android:paddingLeft="16dp"

android:paddingRight="16dp"

android:gravity="center"

android:textColor="@android:color/white"

android:textSize="16dp"

android:text="No connection."

android:background="@color/indigo"/>

II. 通过 setView() 方法设置你的自定义 View 到 Toast 。

// 创建 Toast 实例

Toast toast = new Toast(getApplicationContext());

// 创建自定义 view

View view = getLayoutInflater().inflate(R.layout.toast_view, null);

// 设置自定义 view

toast.setView(view);

// 设置显示持续时间

toast.setDuration(Toast.LENGTH_LONG);

// 设置位置

int margin = getResources().getDimensionPixelSize(R.dimen.toast_vertical_margin);

toast.setGravity(Gravity.BOTTOM | Gravity.CENTER_VERTICAL, 0, margin);

// 显示 Toast

toast.show();
关于Android Toast的使用方法掌握了没?更多Android开发技术文章,请持续关注我们!

  • 北京

    010-82600385/6

    北京市海淀区西三旗悦秀路北京明园大学校内

  • 上海

    021-54485127

    上海市徐汇区漕溪路250号银海大楼11层

  • 深圳

    0755-25590506

    深圳市龙华新区人民北路美丽AAA大厦15层

  • 成都

    028-85405115

    成都武侯区科华北路99号科华大厦2层

  • 南京

    025-86551900

    南京市白下区汉中路185号鸿运大厦11层

  • 武汉

    027-87804688

    武汉工程大学卓刀泉校区科技孵化器大楼11层

  • 西安

    029-88756251

    西安市高新区高新1路12号天公大厦3层

  • 广州

    020-38342087

    广州市天河软件园柯木塱园5栋三层

  • 沈阳

    024-24349000

    沈阳市沈河区北顺城路137号锦峰大厦7层

  • 济南

    0531-88898293

    济南市高新区舜华路三庆世纪财富中心B3座6层

  • 重庆

    023-68064704

    重庆市九龙坡区渝州路87号双薪时代九楼

  • 长沙

    15010390966

    长沙市开福区芙蓉中路海东青大厦B座11楼

Copyright © 2004-2017 华清远见教育集团 版权所有,沪ICP备10038863号-3,京公海网安备110108001117号