Android 自定義 Toast 顯示時間
更新時間:2017年06月11日 10:57:57 投稿:lqh
這篇文章主要介紹了Android 自定義 Toast 顯示時間的相關(guān)資料,需要的朋友可以參考下
Android 自定義 Toast 顯示時間
實現(xiàn)代碼:
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("要顯示的內(nèi)容"); //設(shè)置要顯示的內(nèi)容
* myToast.show(8000); //傳入消息顯示時間,單位毫秒,最少2000毫秒,并且只能是2000的倍數(shù)。
* 傳入0時會一直顯示,只有調(diào)用 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;
}
}
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
您可能感興趣的文章:
- android之自定義Toast使用方法
- 超簡單實現(xiàn)Android自定義Toast示例(附源碼)
- Android編程實現(xiàn)Toast自定義布局簡單示例
- Android編程經(jīng)典代碼集錦(復(fù)制,粘貼,瀏覽器調(diào)用,Toast顯示,自定義Dialog等)
- Android Toast自定義顯示時間
- 基于Android LayoutInflater的使用介紹
- Android開發(fā)之獲取LayoutInflater對象的方法總結(jié)
- Android LayoutInflater加載布局詳解及實例代碼
- Android布局加載之LayoutInflater示例詳解
- Android開發(fā)實現(xiàn)自定義Toast、LayoutInflater使用其他布局示例
相關(guān)文章
Android 點擊editview以外位置實現(xiàn)隱藏輸入法
這篇文章主要介紹了Android 點擊editview以外位置實現(xiàn)隱藏輸入法的相關(guān)資料,需要的朋友可以參考下2017-06-06
Android應(yīng)用程序的編譯流程及使用Ant編譯項目的攻略
這篇文章主要介紹了Android應(yīng)用程序的編譯流程及使用Ant編譯項目的攻略,Ant是集編譯測試部署于一體的Java自動化工具,要的朋友可以參考下2016-04-04
Android 兩個ViewPager的聯(lián)動效果的實現(xiàn)
這篇文章主要介紹了Android 兩個ViewPager的聯(lián)動效果的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-08-08
android使用DataBinding來設(shè)置空狀態(tài)
本篇文章主要介紹了android使用DataBinding來設(shè)置空狀態(tài),具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-03-03

