Android 自定義 Toast 顯示時間
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使用surfaceview+MediaPlayer播放視頻
這篇文章主要為大家詳細(xì)介紹了android使用surfaceview+MediaPlayer播放視頻,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-11-11android: targetSdkVersion升級中Only fullscreen activities can r
這篇文章主要給大家介紹了關(guān)于Android target SDK和build tool版本升級中遇到Only fullscreen activities can request orientation問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2018-09-09Android錄音功能的實現(xiàn)以及踩坑實戰(zhàn)記錄
在Android 開發(fā)過程中,有些功能是通用的,或者是多個業(yè)務(wù)方都需要使用的,下面這篇文章主要給大家介紹了關(guān)于Android錄音功能的實現(xiàn)以及踩坑的相關(guān)資料,需要的朋友可以參考下2022-06-06Android 中WebView 截圖的實現(xiàn)方式
這篇文章主要介紹了Android 中WebView 截圖的實現(xiàn)方式,WebView 作為一種特殊的控件,自然不能像其他系統(tǒng) View 或者截屏的方式來獲取截圖。本文通過實例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2017-12-12Android系統(tǒng)關(guān)機(jī)的全流程解析
這篇文章主要介紹了Android系統(tǒng)關(guān)機(jī)的全流程解析,從上層空間一直深入到內(nèi)核全面講解,非常推薦!需要的朋友可以參考下2016-02-02studio碰到問題:java.lang.UnsatisfiedLinkError解決辦法
這篇文章主要介紹了studio碰到問題:java.lang.UnsatisfiedLinkError解決辦法的相關(guān)資料,需要的朋友可以參考下2017-02-02Kotlin基礎(chǔ)學(xué)習(xí)之lambda中return語句詳解
這篇文章主要給大家介紹了關(guān)于Kotlin基礎(chǔ)學(xué)習(xí)之lambda中return語句的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或使用Kotlin具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-07-07設(shè)置界面開發(fā)Preference Library數(shù)據(jù)重建機(jī)制詳解
這篇文章主要為大家介紹了設(shè)置界面開發(fā)利器Preference Library數(shù)據(jù)重建機(jī)制詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10