Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android Toast工具類

Android Toast工具類

編輯:關於Android編程

簡述:

珍藏300年Toast工具類與大家分享,希望對大家有所幫助或者有所啟發........

工具類:

這裡集合了常用的各種形式的Toast,代碼如下:

 

package com.lzy.test;

import android.content.Context;
import android.graphics.Bitmap;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;

/**
 * 集合各種Toast的工具類
 * 
 * @Time 2015年10月20日
 * @author lizy18
 */
public class TinyjoyToastUtil extends Toast {
	private static boolean isShowFlag = true;
	private static Toast toast;

	public TinyjoyToastUtil(Context context) {
		super(context);
		// TODO Auto-generated constructor stub
	}

	/**
	 * 以"字符串類型"為消息的"短顯示吐司"
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            上下文
	 * @param message
	 *            CharSequence類型的信息
	 */
	public static void showShort(Context context, CharSequence message) {
		if (isShowFlag)
			Toast.makeText(context, message, Toast.LENGTH_SHORT).show();
	}

	/**
	 * 以"資源ID"為消息的"短顯示吐司"
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            上下文
	 * @param message
	 *            消息的資源ID
	 */
	public static void showShort(Context context, int message) {
		if (isShowFlag)
			Toast.makeText(context, message, Toast.LENGTH_SHORT).show();
	}

	/**
	 * 以"字符串類型"為消息的"長顯示吐司"
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            上下文
	 * @param message
	 *            "字符串類型的消息"
	 */
	public static void showLong(Context context, CharSequence message) {
		if (isShowFlag)
			Toast.makeText(context, message, Toast.LENGTH_LONG).show();
	}

	/**
	 * 以"字符串資源ID"為消息的"長顯示吐司"
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            上下文
	 * @param message
	 *            消息的資源ID
	 */
	public static void showLong(Context context, int message) {
		if (isShowFlag)
			Toast.makeText(context, message, Toast.LENGTH_LONG).show();
	}

	/**
	 * 自定義顯示位置的吐司, 短吐司, 消息為"字符串資源的ID"
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            上下文
	 * @param charSequence
	 *            字符串類型的消息
	 * @param gravity
	 *            參數類型為Int型,表示在屏幕上所處的位置(如Gravity.centre表示處在屏幕中間)
	 * @param xOffset
	 *            Toast這個View以Gravity.centre位置為參照物相對X軸的偏移量
	 * @param yOffset
	 *            Toast這個View以Gravity.centre位置為參照物相對Y軸的偏移量
	 */
	public static void showCustomLocationShort(Context context, int messageId,
			int gravity, int xOffset, int yOffset) {
		if (isShowFlag) {
			Toast toast = Toast
					.makeText(context, messageId, Toast.LENGTH_SHORT);
			toast.setGravity(gravity, xOffset, yOffset);
			toast.show();
		}
	}

	/**
	 * 自定義顯示位置的吐司, 長吐司, 消息為字符串資源ID
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            上下文
	 * @param charSequence
	 *            整形int的消息資源的ID值
	 * @param gravity
	 *            參數類型為Int型,表示在屏幕上所處的位置(如Gravity.centre表示處在屏幕中間)
	 * @param xOffset
	 *            Toast這個View以Gravity.centre位置為參照物相對X軸的偏移量
	 * @param yOffset
	 *            Toast這個View以Gravity.centre位置為參照物相對Y軸的偏移量
	 */
	public static void showCustomLocationLong(Context context, int messageId,
			int gravity, int xOffset, int yOffset) {
		if (isShowFlag) {
			Toast toast = Toast.makeText(context, messageId, Toast.LENGTH_LONG);
			toast.setGravity(gravity, xOffset, yOffset);
			toast.show();
		}
	}

	/**
	 * 自定義顯示位置的吐司, 短吐司, 消息為字符串類型
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            上下文
	 * @param charSequence
	 *            字符串類型的消息
	 * @param gravity
	 *            參數類型為Int型,表示在屏幕上所處的位置(如Gravity.centre表示處在屏幕中間)
	 * @param xOffset
	 *            Toast這個View以Gravity.centre位置為參照物相對X軸的偏移量
	 * @param yOffset
	 *            Toast這個View以Gravity.centre位置為參照物相對Y軸的偏移量
	 */
	public static void showCustomLocationShort(Context context,
			CharSequence message, int gravity, int xOffset, int yOffset) {
		if (isShowFlag) {
			Toast toast = Toast.makeText(context, message, Toast.LENGTH_SHORT);
			toast.setGravity(gravity, xOffset, yOffset);
			toast.show();
		}
	}

	/**
	 * 自定義顯示位置的吐司, 長吐司, 消息為字符串類型
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            上下文
	 * @param charSequence
	 *            字符串類型的消息
	 * @param gravity
	 *            參數類型為Int型,表示在屏幕上所處的位置(如Gravity.centre表示處在屏幕中間)
	 * @param xOffset
	 *            Toast這個View以Gravity.centre位置為參照物相對X軸的偏移量
	 * @param yOffset
	 *            Toast這個View以Gravity.centre位置為參照物相對Y軸的偏移量
	 */
	public static void showCustomLocationLong(Context context,
			CharSequence charSequence, int gravity, int xOffset, int yOffset) {
		if (isShowFlag) {
			toast = Toast.makeText(context, charSequence, Toast.LENGTH_LONG);
			toast.setGravity(gravity, xOffset, yOffset);
			toast.show();
		}
	}

	/**
	 * 這是一個帶圖片的吐司,其吐司的顯示位置定義在了屏幕正中間-->短吐司
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            上下文
	 * @param message
	 *            字符串類型的消息
	 * @param resId
	 *            圖片資源ID
	 */
	public static void showCustomToastWithImageShort(Context context,
			CharSequence message, int resId) {
		if (isShowFlag) {
			toast = Toast.makeText(context, message, Toast.LENGTH_SHORT);
			toast.setGravity(Gravity.CENTER, 0, 0);
			LinearLayout ToastContentView = (LinearLayout) toast.getView();
			ImageView img = new ImageView(context);
			img.setImageResource(resId);
			ToastContentView.addView(img);
			toast.show();
		}

	}

	/**
	 * 這是一個帶圖片的吐司,其吐司的顯示位置定義在了屏幕正中間-->長吐司
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            上下文
	 * @param message
	 *            字符串類型的消息
	 * @param resId
	 *            圖片資源ID
	 */
	public static void showCustomToastWithImageLong(Context context,
			CharSequence message, int resId) {
		if (isShowFlag) {
			toast = Toast.makeText(context, message, Toast.LENGTH_SHORT);
			toast.setGravity(Gravity.CENTER, 0, 0);
			LinearLayout ToastContentView = (LinearLayout) toast.getView();
			ImageView img = new ImageView(context);
			img.setImageResource(resId);
			ToastContentView.addView(img);
			toast.show();
		}

	}

	/**
	 * 這是一個帶圖片的吐司,其吐司的顯示位置定義在了屏幕正中間-->短吐司
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            上下文
	 * @param messageId
	 *            字符串資源的ID值
	 * @param resId
	 *            圖片資源ID
	 */
	public static void showCustomToastWithImageShort(Context context,
			int messageId, int resId) {
		if (isShowFlag) {
			toast = Toast.makeText(context, messageId, Toast.LENGTH_SHORT);
			toast.setGravity(Gravity.CENTER, 0, 0);
			LinearLayout ToastContentView = (LinearLayout) toast.getView();
			ImageView img = new ImageView(context);
			img.setImageResource(resId);
			ToastContentView.addView(img);
			toast.show();
		}

	}

	/**
	 * 這是一個帶圖片的吐司,其吐司的顯示位置定義在了屏幕正中間-->長吐司
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            上下文
	 * @param messageId
	 *            字符串資源的ID值
	 * @param resId
	 *            圖片資源ID
	 */
	public static void showCustomToastWithImageLong(Context context,
			int messageId, int resId) {
		if (isShowFlag) {
			toast = Toast.makeText(context, messageId, Toast.LENGTH_SHORT);
			toast.setGravity(Gravity.CENTER, 0, 0);
			LinearLayout ToastContentView = (LinearLayout) toast.getView();
			ImageView img = new ImageView(context);
			img.setImageResource(resId);
			ToastContentView.addView(img);
			toast.show();
		}
	}

	/**
	 * 
	 * 這是一個完全自定義的短吐司Toast:所展示出來的視圖是自己在res文件夾中自定義的xml布局文件
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            所在Activity的上下文
	 * @param layoutResource
	 *            所要加載的XML布局資源文件的ID值
	 * @param message
	 *            所要通知的文本信息(CharSequence形式)
	 * @param bitmap
	 *            所要通知的圖片的信息(Bitmap形式)
	 * 
	 *
	 */

	public static void showCompletedCustomToastShort(Context context,
			int layoutResource, CharSequence message, Bitmap bitmap) {
		if (isShowFlag) {
			toast = new Toast(context);
			LayoutInflater inflate = (LayoutInflater) context
					.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
			View view = inflate.inflate(layoutResource, null);
			TextView mTextView = (TextView) view
					.findViewById(R.id.toast_text_content);
			ImageView mImageView = (ImageView) view
					.findViewById(R.id.toast_image_content);
			mTextView.setText(message);
			mImageView.setImageBitmap(bitmap);
			toast.setGravity(Gravity.CENTER, 0, 0);
			toast.setView(view);
			toast.setDuration(TinyjoyToastUtil.LENGTH_SHORT);
			toast.show();
		}
	}

	/**
	 * 
	 * 這是一個完全自定義的長吐司Toast:所展示出來的視圖是自己在res文件夾中自定義的xml布局文件
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            所在Activity的上下文
	 * @param layoutResource
	 *            所要加載的XML布局資源文件的ID值
	 * @param message
	 *            所要通知的文本信息(CharSequence形式)
	 * @param bitmap
	 *            所要通知的圖片的信息(Bitmap形式)
	 * 
	 */

	public static void showCompletedCustomToastLong(Context context,
			int layoutResource, CharSequence message, Bitmap bitmap) {
		if (isShowFlag) {
			toast = new Toast(context);
			LayoutInflater inflate = (LayoutInflater) context
					.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
			View view = inflate.inflate(layoutResource, null);
			TextView mTextView = (TextView) view
					.findViewById(R.id.toast_text_content);
			ImageView mImageView = (ImageView) view
					.findViewById(R.id.toast_image_content);
			mTextView.setText(message);
			mImageView.setImageBitmap(bitmap);
			toast.setGravity(Gravity.CENTER, 0, 0);
			toast.setView(view);
			toast.setDuration(TinyjoyToastUtil.LENGTH_SHORT);
			toast.show();
		}
	}

	/**
	 * 完全自定義的短吐司:所展示出來的視圖是自己在res文件夾中自定義的xml布局文件
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            所在Activity的上下文
	 * @param layoutResource
	 *            所要加載的XML布局資源文件的ID值
	 * @param message
	 *            所要通知的文本信息(CharSequence形式)
	 * @param imaegId
	 *            所要通知的圖片的信息(圖片資源ID值)
	 */
	public static void showCompletedCustomToastShortWithResId(Context context,
			int layoutResource, CharSequence message, int imaegId) {
		if (isShowFlag) {
			toast = new Toast(context);
			LayoutInflater inflate = (LayoutInflater) context
					.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
			View view = inflate.inflate(layoutResource, null);
			TextView mTextView = (TextView) view
					.findViewById(R.id.toast_text_content);
			ImageView mImageView = (ImageView) view
					.findViewById(R.id.toast_image_content);
			mTextView.setText(message);
			mImageView.setImageResource(imaegId);
			toast.setGravity(Gravity.CENTER, 0, 0);
			toast.setView(view);
			toast.setDuration(TinyjoyToastUtil.LENGTH_LONG);
			toast.show();
		}
	}

	/**
	 * 完全自定義的長吐司:所展示出來的視圖是自己在res文件夾中自定義的xml布局文件
	 * 
	 * @Time 2015年10月20日
	 * @Author lizy18
	 * @param context
	 *            所在Activity的上下文
	 * @param layoutResource
	 *            所要加載的XML布局資源文件的ID值
	 * @param message
	 *            所要通知的文本信息(CharSequence形式)
	 * @param imaegId
	 *            所要通知的圖片的信息(圖片資源ID值)
	 */
	public static void showCompletedCustomToastLongWithResId(Context context,
			int layoutResource, CharSequence message, int imaegId) {
		if (isShowFlag) {
			toast = new Toast(context);
			LayoutInflater inflate = (LayoutInflater) context
					.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
			View view = inflate.inflate(layoutResource, null);
			TextView mTextView = (TextView) view
					.findViewById(R.id.toast_text_content);
			ImageView mImageView = (ImageView) view
					.findViewById(R.id.toast_image_content);
			mTextView.setText(message);
			mImageView.setImageResource(imaegId);
			toast.setGravity(Gravity.CENTER, 0, 0);
			toast.setView(view);
			toast.setDuration(TinyjoyToastUtil.LENGTH_LONG);
			toast.show();
		}
	}
}


 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved