Toast是一种提供给用户简介信息的视图,可以创建和显示消息,该视图以浮于应用程序之上的形式呈现给用户。因为它并不获得焦点,即使用户正在输入什么也不会受到影响。

Toast目标是尽可能以不显眼的方式,使用户看到提示的信息。

运行截图:

程序结构

package com.example.asus.gary_74;import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.Toast;public class MainActivity extends AppCompatActivity {private Button bt1,bt2,bt3,bt4;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);bt1=(Button)findViewById(R.id.button);bt1.setOnClickListener(new Button.OnClickListener(){@Overridepublic void onClick(View v) {//Toast.LENGTH_SHORT 大约2秒//Toast.LENGTH_LONG  大约3.5秒Toast toast = Toast.makeText(MainActivity.this,"默认的Toast",Toast.LENGTH_LONG);toast.show();}});bt2=(Button)findViewById(R.id.button2);bt2.setOnClickListener(new Button.OnClickListener() {@Overridepublic void onClick(View v) {Toast toast=Toast.makeText(getApplicationContext(), "自定义显示位置的Toast", Toast.LENGTH_SHORT);//第一个参数:设置toast在屏幕中显示的位置。我现在的设置是居中靠顶//第二个参数:相对于第一个参数设置toast位置的横向X轴的偏移量,正数向右偏移,负数向左偏移//第三个参数:同的第二个参数道理一样//如果你设置的偏移量超过了屏幕的范围,toast将在屏幕内靠近超出的那个边界显示toast.setGravity(Gravity.TOP|Gravity.CENTER, -50, 100);//屏幕居中显示,X轴和Y轴偏移量都是0//toast.setGravity(Gravity.CENTER, 0, 0);
                toast.show();}});bt3=(Button)findViewById(R.id.button3);bt3.setOnClickListener(new Button.OnClickListener(){@Overridepublic void onClick(View v) {Toast toast=Toast.makeText(getApplicationContext(), "显示带图片的toast",Toast.LENGTH_LONG);toast.setGravity(Gravity.CENTER, 0, 0);//创建图片视图对象ImageView imageView= new ImageView(getApplicationContext());//设置图片
                 imageView.setImageResource(android.R.drawable.ic_input_add);//获得toast的布局LinearLayout toastView = (LinearLayout) toast.getView();//设置此布局为横向的
                 toastView.setOrientation(LinearLayout.HORIZONTAL);//将ImageView在加入到此布局中的第一个位置toastView.addView(imageView, 0);toast.show();}});}
}

MainActivity

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context="com.example.asus.gary_74.MainActivity"><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="Gary_Toast!"android:textSize="40px" /><Buttonandroid:id="@+id/button"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="默认显示" /><Buttonandroid:id="@+id/button2"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="自定义位置显示" /><Buttonandroid:id="@+id/button3"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="带图片显示" /></LinearLayout>

activity_main.xml

一、界面布局

  三个Button,分别显示不同的Toast提示效果

二、实现程序功能

1、显示默认的Toast消息

Toast makeText(Context context,int resId,int duration)

   context:使用的上下文,通常是Activity对象

    resId:要使用的字符串资源ID

    duration:该消息的在屏幕上停留的时间。值为LENGTH_SHORT或者LENGTH_LONG
  bt1=(Button)findViewById(R.id.button);bt1.setOnClickListener(new Button.OnClickListener(){@Overridepublic void onClick(View v) {//Toast.LENGTH_SHORT 大约2秒//Toast.LENGTH_LONG  大约3.5秒Toast toast = Toast.makeText(MainActivity.this,"默认的Toast",Toast.LENGTH_LONG);toast.show();}});

2、自定义位置显示Toast消息

void setDuration(int gravity,int xOffset,int yOfset)    设置提示消息在屏幕上显示的位置
        bt2=(Button)findViewById(R.id.button2);bt2.setOnClickListener(new Button.OnClickListener() {@Overridepublic void onClick(View v) {Toast toast=Toast.makeText(getApplicationContext(), "自定义显示位置的Toast", Toast.LENGTH_SHORT);//第一个参数:设置toast在屏幕中显示的位置。我现在的设置是居中靠顶//第二个参数:相对于第一个参数设置toast位置的横向X轴的偏移量,正数向右偏移,负数向左偏移//第三个参数:同的第二个参数道理一样//如果你设置的偏移量超过了屏幕的范围,toast将在屏幕内靠近超出的那个边界显示toast.setGravity(Gravity.TOP|Gravity.CENTER, -50, 100);//屏幕居中显示,X轴和Y轴偏移量都是0//toast.setGravity(Gravity.CENTER, 0, 0);
                toast.show();}});

3、显示带图片的Toast消息

bt3=(Button)findViewById(R.id.button3);bt3.setOnClickListener(new Button.OnClickListener(){@Overridepublic void onClick(View v) {Toast toast=Toast.makeText(getApplicationContext(), "显示带图片的toast",Toast.LENGTH_LONG);toast.setGravity(Gravity.CENTER, 0, 0);//创建图片视图对象ImageView imageView= new ImageView(getApplicationContext());//设置图片
                 imageView.setImageResource(android.R.drawable.ic_input_add);//获得toast的布局LinearLayout toastView = (LinearLayout) toast.getView();//设置此布局为横向的
                 toastView.setOrientation(LinearLayout.HORIZONTAL);//将ImageView在加入到此布局中的第一个位置toastView.addView(imageView, 0);toast.show();}});

传送门:消息模式Toast.make Text的几种常见用法

转载于:https://www.cnblogs.com/1138720556Gary/p/9114545.html

Android_(消息提示)多种使用Toast的消息提示相关推荐

  1. QQ群设置里的“不提示消息只显示数目”与“接收不提示消息”的区别

    "不提示消息只显示数目":有消息了,不会提示你,你并不知道有人说话了,但一旦拉开群的菜单就能看到此群后面括号里的数字,那数字就是已收到的消息条数,打开对话框才能看到消息:     ...

  2. html微信非法昵称代码,微信撤回消息并亲了你一下改名提示非法字符解决办法...

    微信改名提示非法字符怎么办 ?微信撤回消息并亲了你一下是朋友圈最新的热门玩法,但是目前由于bug修复,很多人都在改名时提示非法字符,那么要怎么办呢?下面小编就为介绍一下微信撤回消息并亲了你一下改名提示 ...

  3. [经验教程]手机上微信新消息不提示也不显示微信消息通知怎么办?

    微信来新消息手机上不提示也不显示新消息提醒通知,主要因为二个方便:一是微信设置新消息通知未启,另一个是手机微信应用未开通消息提醒通知.只要按下面的教程分别排查开启新消息通知即可恢复微信消息通知提醒正常 ...

  4. html来自网页的消息,win7系统ie浏览器提示:来自网页的消息的解决方法

    无论谁在使用电脑的时候都可能会发现ie浏览器提示:来自网页的消息的问题,ie浏览器提示:来自网页的消息让用户们很苦恼,这是怎么回事呢,ie浏览器提示:来自网页的消息有什么简便的处理方式呢,其实只要依照 ...

  5. uni-app 声音/震动提示,播放系统默认消息声音 安卓(Android)测试通过

    uni-app 声音/震动提示,播放系统默认消息声音 安卓(Android)测试通过 可以跟据自己需求使用,有不足的地方希望大家帮忙补充 参数 type Options vibrate:震动 othr ...

  6. 关于即时通讯系统中消息发送、转发、展示、提示等专利初探

    关于即时通讯系统中消息发送.转发.展示.提示等专利初探 即时通讯是目前Internet上最为流行的通讯方式,实时通信(Instant Messaging,简称IM)是一个实时通信系统,允许两人或多人使 ...

  7. 小程序统一服务消息_[miniblog]小程序订阅消息踩坑记

    有阵子没有更新我的mini-blog了,这次把推送消息那块做了些改动,小程序的模板消息即将废弃,订阅消息终于来了. 关于订阅消息 订阅消息分为一次性订阅和长期订阅,长期订阅就不说啦,不是个人号可以染指 ...

  8. [moka同学笔记转载]Yii 设置 flash消息 创建一个渐隐形式的消息框

    来源:http://www.cnblogs.com/xp796/p/5481004.html Yii 设置 flash消息 创建一个渐隐形式的消息框 1 /*适用情况:比如提交一个表单,提交完成之后在 ...

  9. 【转】提示框第三方库之MBProgressHUD iOS toast效果 动态提示框效果

    原文网址:http://www.zhimengzhe.com/IOSkaifa/37910.html MBProgressHUD是一个开源项目,实现了很多种样式的提示框,使用上简单.方便,并且可以对显 ...

最新文章

  1. sklearn中各算法类的fit,fit_transform和transform函数
  2. 电量模块MODBUS RTU寄存器解读
  3. 404页面 3秒后跳到首页 实现
  4. 论文浅尝 | 近期论文精选
  5. Mac下ssh连接远程服务器时自动断开问题
  6. Map集合-根据宠物昵称查找宠物
  7. java 比较器_java比较器简略叙述
  8. postman 测试excel下载_postman下载,postman下载excel
  9. vs2010中svn使用教程_VS2010中使用ankhSVN
  10. Win11使用CAD卡顿或者致命错误怎么办?Win11无法正常使用CAD
  11. while 循环导致 IndentationError: unexpected unindent错误
  12. JAVA结合AE(Adobe After Effects),通过解析AE源文件AEPX,替换素材,渲染合成,转码等操作
  13. POI使用详解 java 复杂excel导出(笔记)
  14. Android APP启动其他APP(一个APP拉起(跳转到)另一个APP)
  15. AutoCAD系统变量大全
  16. 以计算机为主题的英语作文范例,英语作文范例,一篇万能英语作文范文。
  17. 网络工程师提高篇 | 路由重发布你了解多少?从原理到配置,瑞哥带你学习一波!
  18. 记忆化搜索 (蒟蒻练习生)
  19. 答一位网友《SBO有哪样的几种开发方式》
  20. 【代码】第11章 APP的爬取,appium打开微信朋友圈

热门文章

  1. 《VMware vCAT权威指南:成功构建云环境的核心技术和方法》一3.6 vCloud计量
  2. 新概念英语(1-73)The way to King Street
  3. php 之 数据访问 增删改查
  4. PHP无法加载curl扩展
  5. java字符串 n换行符_java切割字符串中的回车应注意是\n\r不是\n
  6. 怎样测试运算放大器的输入失调电压?
  7. 几种和生成网络相似的纠缠网络(接近人脑)
  8. PostgreSQL Oracle 兼容性之 - PL/SQL DETERMINISTIC 与PG函数稳定性(immutable, stable, volatile)...
  9. shell批量增删改查百库百表(mysql)
  10. Centos7 修改运行级别