简单介绍:Toast英文含义是吐司,在Android中。它就像烘烤机里做好的吐司弹出来,并持续一小段时间后慢慢消失。

Toast也是一个容器,能够包括各种View,并承载着它们显示。

Android中提供一种简单的Toast消息提示框机制。能够在用户点击了某些button后。提示用户一些信息。提示的信息不能被用户点击,Toast的提示信息依据用户设置的显示时间后自己主动消失。Toast的提示信息能够在调试程序的时候方便的显示某些想显示的东西,或者给用户提供友好的界面显示效果。

有两种方式去创建而且显示Toast:

  1. Toast.makeText(Context context, int resId, int duration) 
    Toast.makeText(Context context, CharSequence text, int duration) 
    Context为上下文,通常为当前activity;resId是string字符串的id,CharSequence为你要显示的字符串。duration为显示的时间,能够选择Toast.LENGTH_SHORT或Toast.LENGTH_LONG,也可自己定义时间。 用法: 
    Toast.makeText(this, "this is string", Toast.LENGTH_SHORT).show();
  2. 自己创建Toast,而且设置视图,即自己定义
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Toast toast = new Toast(this);
// 定义一个ImageView
ImageView imageView = new ImageView(this);
imageView.setImageResource(R.drawable.ic_launcher);
// 定义一个Layout,这里是Layout
LinearLayout Layout = new LinearLayout(this);
Layout.setOrientation(LinearLayout.HORIZONTAL);
// 将ImageView放到Layout中
Layout.addView(imageView);
// 设置View
toast.setView(Layout);
//设置显示时间
toast.setDuration(20);
toast.show();

通过上面的代码就能够自己定义一个Toast了,我们还在当中显示了图片。

怎样设置Toast显示的位置

方法一:

setGravity(int gravity, int xOffset, int yOffset) 三个參数分别表示(起点位置,水平向右位移,垂直向下位移)

方法二:

setMargin(float horizontalMargin, float verticalMargin) 以横向和纵向的百分比设置显示位置,參数均为float类型(水平位移正右负左,竖直位移正上负下)

//默认的Gravity就是Gravity.CENTER_HORIZONTAL|Gravity.BOTTOM

Toast toast = Toast.makeText(this, "set your gesture firstly", Toast.LENGTH_LONG); //toast提示
toast.setGravity(Gravity.CENTER_HORIZONTAL|Gravity.BOTTOM, 0, 0); //先设置重心
toast.setMargin(0f, 0.1f) ; //设置相对重心位置
toast.show();

注意事项:

Toast中有一个public方法setText(),能够给toast设置resid或者string,该方式尽能够在我们的第一种方法中使用。另外一种自己定义toast的方式是不能够使用的,使用的话会抛出异常。

原因是使用第一种方式创建。Toast会自己创建一个view,即textview,而我们使用这个setText实际是向这个TextView设置内容,而自己定义的View不会有这个控件。因此会报错。

//加设置位置
Toast toast = Toast.makeText(this, "set your gesture firstly", Toast.LENGTH_LONG); //toast提示//toast.setGravity(Gravity.BOTTOM, 20, 60); toast.show();

ref:http://blog.csdn.net/pipisorry/article/details/26837809

http://blog.isming.me/blog/2014/03/22/toast-use/

http://android.codemach.com/zai-android-zhong-shi-yong-toast-jin-xing-ti-shi.html

Android Toast小解的更多相关文章

  1. Android Toast cancel和show 不踩中不会知道的坑

    说到Android Toast,几乎都很熟悉吧,下面讲讲怎么实现下面几种场景: 1.连续点击一个按钮,每次都产生一个新的Toast并且调用show方法 问题:触发了toast以后,toast内容会一直 ...

  2. Android Toast效果设置

    Android Toast效果设置 Toast是Android中用来显示显示信息的一种机制,和Dialog不一样的是,Toast是没有焦点的,而且Toast显示的时间有限,过一定的时间就会自动消失.总 ...

  3. Android Toast 封装,避免Toast消息覆盖,替换系统Toast最好用的封装

    Android Toast 封装,避免Toast消息覆盖,无阻塞,等强大功能   ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ...

  4. Android Toast效果

    Android Toast效果是一种提醒方式,在程序中使用一些短小的信息通知用户,过一会儿会自动消失,实现如下: FirstActivity.java package org.elvalad.acti ...

  5. Android Toast 设置到屏幕中间,自定义Toast的实现方法,及其说明

    http://blog.csdn.net/wangfayinn/article/details/8065763 Android Toast用于在手机屏幕上向用户显示一条信息,一段时间后信息会自动消失. ...

  6. Unity干中学——如何实现类似Windows Store 应用程序和Android Toast的通知?

    要实现通知中心功能,首先要创建一个游戏物体,在上面挂载GUITeture和GUIText脚本.注意GUITexture和GUIText脚本的顺序,GUITexture在前,GUIText在后,否则GU ...

  7. [Android] Toast问题深度剖析(二)

    欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 作者: QQ音乐技术团队 题记 Toast 作为 Android 系统中最常用的类之一,由于其方便的api设计和简洁的交互体验,被我们所广泛采用 ...

  8. robotframework + appium 获取android toast

    android toast 获取主要方式是在出现toast的时候查找元素:xpath=//*[contains(@text,'记同步')]  ,该xpath 表示为toast信息含有  "记 ...

  9. Unity直接调用Android Toast

    Unity直接调用Android Toast 这两天在搭一套UI框架,想把Android的Toast直接集成上去,有不想直接打jar包,所有写了个C#直接调用,废话不多说,直接干货: using Un ...

随机推荐

  1. python3爬取微博评论并存为xlsx

    python3爬取微博评论并存为xlsx**由于微博电脑端的网页版页面比较复杂,我们可以访问手机端的微博网站,网址为:https://m.weibo.cn/一.访问微博网站,找到热门推荐链接我们打开微 ...

  2. element-UI el-table添加序号列时序号永远都是从1开始?

    Part.1 示例 当我们想在 el-table 中添加序号列时,如下: <el-table-column label="序号" type="index" ...

  3. 使用soapUI5.3.0调试webservice接口(参数为XML格式)

    最近项目中经常要调试webservice接口,从朋友处了解到他们经常使用SoapUI,因此学习一下这个工具的使用,为避免遗忘,特地记录下来,分享分享... 下载 #####首先,下载SoapUI,我下 ...

  4. Ubuntu16.04 python3.4.3升级到python3.7.1

    python有两个版本,一个2版本,使用的是python:另一个是3版本,使用的是python3. 简易安装python后得到的3版本的版本号是python3.4.3. 可以使用下面的命令查看py版本 ...

  5. Spring Boot . 3 -- Spring Boot Auto_configuration 是如何实现的?

    配置是Spring 框架的重要核心之一,所以Spring 应用能够正常的跑起来肯定是需要配置的,但是使用的Spring Boot 后很多配置没有做,那么AUTO-CONFIGURATION 到底是怎么 ...

  6. quilt-补丁工具

    参考:https://blog.csdn.net/adomwon/article/details/79047059 前言: 在查找openwrt中samba编译报错问题时直到了quilt这个工具,为了 ...

  7. CentOS 7.4 源码编译安装 Redis

    一.CentOS 7.4  源码编译安装 Redis 1.下载源码并解压 wget http://download.redis.io/releases/redis-4.0.10.tar.gz tar ...

  8. 用element-ui的走马灯carousel轻松实现自适应全屏banner图

    写在前面:网站轮播图建议使用swiper组件,非常方便快捷.vue轮播图插件之vue-awesome-swiper 接手一个项目,轮播图是用element-ui的carousel实现的,看起来效果还不 ...

  9. 去面试Python工程师,这几个基础问题一定要能回答,Python面试题No4

    今天的面试题以基础为主,去面试Python工程师,这几个基础问题不能答错 第1题:列表和元组有什么不同? 列表和元组是Python中最常用的两种数据结构,字典是第三种. 相同点: 都是序列 都可以存储 ...

  10. admin源码之url设计

    如何实现批量设计url? 1.创建Django项目 2.新建app01 和 app02 3.在models.py中创建模型 4.在settings.py中完成数据库配置.app配置等 5.数据库迁移 ...