【Android代码片段之六】Toast工具类(实现带图片的Toast消息提示)
转载请注明出处,原文网址:http://blog.csdn.net/m_changgong/article/details/6841266 作者:张燕广
实现的Toast工具类ToastUtil封装了普通文本消息提示和带图片的消息提示,实际开发中可根据自己的需要完善ToastUtil类,比如完善Toast消息位置相关设置等。
ToastUtil类代码如下:
- package com.zyg.demo.toast;
- import android.content.Context;
- import android.view.Gravity;
- import android.view.View;
- import android.widget.ImageView;
- import android.widget.LinearLayout;
- import android.widget.Toast;
- public class ToastUtil {
- private static Toast toast = null;
- public static int LENGTH_LONG = Toast.LENGTH_LONG;
- private static int LENGTH_SHORT = Toast.LENGTH_SHORT;
- /**
- * 普通文本消息提示
- * @param context
- * @param text
- * @param duration
- */
- public static void TextToast(Context context,CharSequence text,int duration){
- //创建一个Toast提示消息
- toast = Toast.makeText(context, text, duration);
- //设置Toast提示消息在屏幕上的位置
- toast.setGravity(Gravity.CENTER, 0, 0);
- //显示消息
- toast.show();
- }
- /**
- * 带图片消息提示
- * @param context
- * @param ImageResourceId
- * @param text
- * @param duration
- */
- public static void ImageToast(Context context,int ImageResourceId,CharSequence text,int duration){
- //创建一个Toast提示消息
- toast = Toast.makeText(context, text, Toast.LENGTH_LONG);
- //设置Toast提示消息在屏幕上的位置
- toast.setGravity(Gravity.CENTER, 0, 0);
- //获取Toast提示消息里原有的View
- View toastView = toast.getView();
- //创建一个ImageView
- ImageView img = new ImageView(context);
- img.setImageResource(ImageResourceId);
- //创建一个LineLayout容器
- LinearLayout ll = new LinearLayout(context);
- //向LinearLayout中添加ImageView和Toast原有的View
- ll.addView(img);
- ll.addView(toastView);
- //将LineLayout容器设置为toast的View
- toast.setView(ll);
- //显示消息
- toast.show();
- }
- }
ToastUtil工具类应用示例代码如下:
- package com.zyg.demo.toast;
- import android.app.Activity;
- import android.os.Bundle;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.widget.Button;
- import android.widget.Toast;
- import com.zyg.demo.toast.util.ToastUtil;
- public class ToastActivity extends Activity implements OnClickListener{
- private Button btnTxtToast = null;
- private Button btnImgToast = null;
- private Toast toast = null;
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- initUI();
- }
- private void initUI(){
- btnTxtToast = (Button)findViewById(R.id.txttoast);
- btnTxtToast.setOnClickListener(this);
- btnImgToast = (Button)findViewById(R.id.imgtoast);
- btnImgToast.setOnClickListener(this);
- }
- @Override
- public void onClick(View v) {
- if(v==btnTxtToast){
- String text = "文本消息提示";
- int duration = ToastUtil.LENGTH_LONG;
- ToastUtil.TextToast(this, text, ToastUtil.LENGTH_LONG);
- }else if(v==btnImgToast){
- String text = "正在搜索";
- int ImageResourceId = R.drawable.search;
- int duration = ToastUtil.LENGTH_LONG;
- ToastUtil.ImageToast(this, ImageResourceId, text, duration);
- }
- }
- }
运行效果如下:

【Android代码片段之六】Toast工具类(实现带图片的Toast消息提示)的更多相关文章
- elasticsearch代码片段,及工具类SearchEsUtil.java
ElasticSearchClient.java package com.zbiti.framework.elasticsearch.utils; import java.util.Arrays; i ...
- Android 代码中使用Color工具类 parseColor
方式一: arg1.setBackgroundColor(Color.parseColor("#87CEFA")); 方式二: arg1.setBackgroundColor(ge ...
- Android Toast 工具类
android 中常用系统吐司工具类 package cn.yhq.utils; import android.content.Context; import android.widget.Toas ...
- Android弹出Toast工具类总结
Android弹出Toast工具类总结,包括系统自带的,也包括自定义的. public class ToastUtil { public ToastUtil() { } public static T ...
- Android实用的Toast工具类封装
Toast这个提示框大家都晓得,显示一段时间后自动消失,不能获得焦点.但是在使用中有些问题: 1)需要弹出一个新的Toast时,上一个Toast还没有显示完2)可能重复弹出相同的信息3)Toast具体 ...
- 安卓---Toast工具类,有点懒
package com.liunan.myfirstapp.util; import android.content.Context; import android.widget.Toast; /** ...
- Android开发之常用必备工具类图片bitmap转成字符串string与String字符串转换为bitmap图片格式
作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 QQ986945193 博客园主页:http://www.cnblogs.com/mcxiaobing ...
- java代码行数统计工具类
package com.syl.demo.test; import java.io.*; /** * java代码行数统计工具类 * Created by 孙义朗 on 2017/11/17 0017 ...
- Spring统一返回Json工具类,带分页信息
前言: 项目做前后端分离时,我们会经常提供Json数据给前端,如果有一个统一的Json格式返回工具类,那么将大大提高开发效率和减低沟通成本. 此Json响应工具类,支持带分页信息,支持泛型,支持Htt ...
随机推荐
- 风清杨之Oracle的安装与说明
1.Oracle官网与下载地址 Oracle中文官网:http://www.oracle.com/cn/index.html Oracle中文官网下载:http://www.oracle.com/te ...
- 端口扫描之王——nmap入门精讲(二)
接着讲上节的内容,上节中提到了一个时间优化的问题是使用参数-n,通过不解析地址来进行优化时间的,但是优化时间的方法还有很多,比如说我们可以通过时间优化(0-5),指定单位时间内的探针数,设置组的大小 ...
- 微信小程序开发常见问题分析
距离微信小程序内测版发布已经有十几天的时间了,网上对微信小程序的讨论也异常火爆,从发布到现在微信小程序一直占领着各种技术论坛的头条,当然各种平台也对微信小程序有新闻报道,毕竟腾讯在国内影响力还是很大的 ...
- [AaronYang]C#人爱学不学[3]
本文章不适合入门,只适合有一定基础的人看.我更相信知识细节见高低,我是从4.0开始学的,终于有时间系统的学习C#5.0,是5.0中的知识,会特殊标记下.但写的内容也可能含有其他版本framework的 ...
- 第三十九课:requestAnimationFrame详解
大家应该都知道,如果一个页面运行的定时器很多,无论你怎么优化,最后肯定会超过指定时间才能完成动画.定时器越多,延时越严重. 为此,YUI,kissy等采用中央队列的方式,将定时器减少至一个.浏览器厂商 ...
- 第二十三课:jQuery.event.add的原理以及源码解读
本课主要来讲解一下jQuery是如何实现它的事件系统的. 我们先来看一个问题: 如果有一个表格有100个tr元素,每个都要绑定mouseover/mouseout事件,改成事件代理的方式,可以节省99 ...
- linux php配置ftp扩展
linux+nginx+php+mysql环境下,在部署的时候没有添加php的ftp扩展. 1.找到安装的PHP源码包解压的文件夹进入到到FTP的扩展目录# /root/php-5.3.6/ext/f ...
- 使用Ps制作透明ico
准备好图片 打开Ps新建透明图片->抠取图片->复制粘贴 保存为gif格式->使用ico在线转换即可
- Java虚拟机的功能
1:通过ClassLoader寻找和装载class文件 2:解释字节码成为指令并执行,提供class文件的运行环境.即将字节码转换为不同OS下可执行的机器码指令. 3:进行垃圾回收. 4:提供与硬件交 ...
- 【Matplotlib】设置刻度(1)
刻度设置 参考文档: xticks 命令 yticks 命令 以xticks为例: matplotlib.pyplot.xticks(*args, **kwargs) 获取或者设置当前刻度位置和文本的 ...