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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 实时数据库简介和比较—PI

    实时数据库简介和比较—PI实时数据库是数据库系统发展的一个分支,它适用于处理不断更新的快速变化的数据及具有时间限制的事务处理。实时数据库技术是实时系统和数据库技术相结合的产物,实时数据库系统的主要内容包括:实时数据库模型;

    2022年8月3日
    40
  • Vue常用指令(一)

    Vue常用指令(一)1、v-once 只渲染元素和组件一次。随后的重新渲染,元素/组件及其所有的子节点将被视为静态内容并跳过。代码:<body><div id=”app”> <p v-once>原始值: {{msg}}</p> <p>后面的: {{msg}}</p> <input typ…

    2022年6月13日
    29
  • CSS的十八般技巧

    CSS的十八般技巧

    2021年9月7日
    47
  • Spring Cloud版本与Spring Boot版本之间匹配关系「建议收藏」

    Spring Cloud版本与Spring Boot版本之间匹配关系「建议收藏」很多人在使用springboot和springcloud,但是对于这两者之间的版本关系不是很清楚,特别是在面临升级的时候不知道该如何操作。本文简要摘录的官方文档的部分内容作为依据,供广大同行参考。问题的提出,我现在使用的是1.5.1版本的springboot和Edgware.RELEASE版本的springcloud,我想升级到springboot到2.0.0,springcloud需要升…

    2022年4月30日
    71
  • 国外免费高速php空间,0fees – 300M国外高速免费PHP空间

    国外免费高速php空间,0fees – 300M国外高速免费PHP空间0fees是美国的免费空间,速度不错,提供300M空间,每月10G流量限制,ftp、web方式上传管理文件,支持PHP5,提供3个MySQL数据库,无限个支持POP3的电子邮箱,可以添加6个二级域名,绑定6个域名,可建6个不同网站,cPanel管理面板。网址:http://www.0fees.net点“OrderNow!”申请。申请很简单,填写用户名、密码、电子邮箱、网站类型、网站语言、验证码,…

    2022年9月21日
    3
  • PHP面试-复习知识点整理「建议收藏」

    PHP面试-复习知识点整理

    2022年2月10日
    50

发表回复

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

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