android toast 自定义时间,Android 自定义 Toast 显示时间「建议收藏」

android toast 自定义时间,Android 自定义 Toast 显示时间「建议收藏」Android自定义Toast显示时间实现代码:packagecom.wm.realname.util;importandroid.content.Context;importandroid.os.Handler;importandroid.view.View;importandroid.widget.Toast;/***Toast自定义显示时间*使用方法*1.先初始化类M…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Android 自定义 Toast 显示时间

实现代码:

package com.wm.realname.util;

import android.content.Context;

import android.os.Handler;

import android.view.View;

import android.widget.Toast;

/**

* Toast自定义显示时间

* 使用方法

* 1.先初始化类 MyToast myToast = new MyToast(this);

* 2.显示消息 myToast.setText(“要显示的内容”); //设置要显示的内容

* myToast.show(8000); //传入消息显示时间,单位毫秒,最少2000毫秒,并且只能是2000的倍数。

* 传入0时会一直显示,只有调用 myToast.cancel();时才会取消。

* 3.取消消息显示 myToast.cancel();

* */

public class ToastUtil {

private Context mContext = null;

private Toast mToast = null;

private Handler mHandler = null;

private int duration = 0;

private int currDuration = 0;

private final int DEFAULT = 2000;

private Runnable mToastThread = new Runnable() {

public void run() {

mToast.show();

mHandler.postDelayed(mToastThread,DEFAULT); // 每隔2秒显示一次

if (duration != 0) {

if (currDuration <= duration) {

currDuration += DEFAULT;

} else {

cancel();

}

}

}

}

public ToastUtil(Context context) {

mContext = context;

currDuration = DEFAULT;

mHandler = new Handler(mContext.getMainLooper());

mToast = Toast.makeText(mContext,””,Toast.LENGTH_LONG);

}

public void setText(String text) {

mToast.setText(text);

}

public void show(int duration) {

this.duration = duration;

mHandler.post(mToastThread);

}

public void setGravity(int gravity,int xOffset,int yOffset) {

mToast.setGravity(gravity,xOffset,yOffset);

}

public void setDuration(int duration) {

mToast.setDuration(duration);

}

public void setView(View view) {

mToast.setView(view);

}

public void cancel( ) {

mHandler.removeCallbacks(mToastThread);// 先把显示线程删除

mToast.cancel();// 把最后一个线程的显示效果cancel掉,就一了百了了

currDuration = DEFAULT;

}

}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

小编个人微信号 jb51ccc

喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197863.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux服务器php环境搭建教程

    Linux服务器php环境搭建教程RT.以前服务器端是使用phpnow套件。今天尝试在ubuntu下独立完成apache2+php+mysql的服务器运行环境。具体的步骤如下(下面的操作都需要使用root权限):|.Apache2安装sudoapt-getinstallapache2安装的成功标志是你在浏览器中打开127.0.0.1的时候会显示“Itworks!”的字眼。apache2访

    2022年6月29日
    16
  • pycharm如何在运行时打开控制台[通俗易懂]

    pycharm如何在运行时打开控制台[通俗易懂]pycharm如何在运行时打开控制台解决方案:

    2022年8月25日
    3
  • c中给字符数组,字符串指针赋值的方法总结[通俗易懂]

    在写程序的时候,总是搞混,现在总结一下以免以后再犯chara[10];怎么给这个数组赋值呢?谭浩强的书上明确指出,字符数组可以在定义时整体赋值,不能再赋值语句中整体赋值。1、定义的时候直接用字符串赋值chara[10]=”hello”;注意:不能先定义再给它赋值,如chara[10];a[10]=”hello”;这样是错误的!2、对数组中字符逐个赋值chara

    2022年4月15日
    49
  • 15个权威的PLC学习资料下载地址 (西门子、三菱、欧姆龙)

    15个权威的PLC学习资料下载地址 (西门子、三菱、欧姆龙)论坛贴吧及工作中经常有人问PLC的学习资料去哪里下载,比如博图TIA软件哪里下载,怎么安装。三菱PLC的编程软件哪里下载等等,一般得到的回复是去官网啊,可是去官网下载界面也不太好找。今天整理了一下,把西门子、三菱、欧姆龙的官方下载地址直接贴出来供大家直接使用。比如下文第一个链接西门子资料下载中心,不仅包括西门子相关编程软件的下载,还包括常见系列的编程手册、产品目录、新手必读等等。西门子…

    2022年10月18日
    0
  • django 模板_django动态模型字段

    django 模板_django动态模型字段变量模板中可以包含变量,Django在渲染模板的时候,可以传递变量对应的值过去进行替换。变量的命名规范和Python非常类似,只能是阿拉伯数字和英文字符以及下划线的组合,不能出现标点符号等特殊字符。

    2022年7月29日
    9
  • 详解汇编语言B和LDR指令与相对跳转和绝对跳转的关系[通俗易懂]

    详解汇编语言B和LDR指令与相对跳转和绝对跳转的关系[通俗易懂]相对跳转和绝对跳转为什么要有相对跳转和绝对跳转?B和LDR跳转范围为什么两者的跳转范围不同?如何区分?

    2022年6月29日
    32

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号