Android 自定義 Toast 顯示時間
創(chuàng)新互聯(lián)公司是一家以網絡技術公司,為中小企業(yè)提供網站維護、成都網站制作、做網站、網站備案、服務器租用、申請域名、軟件開發(fā)、成都微信小程序等企業(yè)互聯(lián)網相關業(yè)務,是一家有著豐富的互聯(lián)網運營推廣經驗的科技公司,有著多年的網站建站經驗,致力于幫助中小企業(yè)在互聯(lián)網讓打出自已的品牌和口碑,讓企業(yè)在互聯(lián)網上打開一個面向全國乃至全球的業(yè)務窗口:建站歡迎聯(lián)系:18980820575
實現(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("要顯示的內容"); //設置要顯示的內容 * 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; } }
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
本文題目:Android自定義Toast顯示時間
瀏覽路徑:http://sd-ha.com/article28/ghdgcp.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供全網營銷推廣、電子商務、網站策劃、網站設計、網站營銷、網站改版
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)