Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android|Java 開發常用工具類整理

Android|Java 開發常用工具類整理

編輯:關於Android編程

如題 該文章展示的是我開發過程中使用的部分常用工具類方法,不定期更新。


歡迎各位大牛批評指教,如有發現錯誤,歡迎留言指教,如有更好的實現方式,也歡迎留言交流學習,謝謝。

 

package com.kevin.test.utils;
/**
 * 字符串格式匹配工具類 匹配手機號、座機號、郵箱等
 * 
 * @author blj
 * 
 */
public class FormatCheckUtils
{

	/**
	 * 判斷是否符合郵箱格式
	 */
	public static boolean checkEmailValid(String strEmail)
	{
		if (null == strEmail)
		{
			return false;
		}
		return strEmail.matches([a-zA-Z0-9_]+@[a-z0-9]+(.[a-z]+){2});
	}



	/**
	 * 判斷是否符合座機號格式
	 * 
	 * @param phoneNumber
	 * @return
	 */
	public static boolean checkPhoneNumberValid(String phoneNumber)
	{
		if (null == phoneNumber)
		{
			return false;
		}

		/**
		 * 匹配北京上海等3-8格式:(^0[1,2]{1}\d{1}-?\d{8}
		 * 匹配其他省份等4-7/8格式:(^0[3-9]{1}\d{2}-?\d{7,8})
		 * 匹配內部電話轉接號:(-(\d{1,4}))?$)
		 */
		// 區號與座機號之間可不添加“-” 外部號碼與內部號碼之間必須添加“-”
		String check = ((^0[1,2]{1}\d{1}-?\d{8}|(^0[3-9]{1}\d{2}-?\d{7,8}))(-(\d{1,4}))?$);
		return phoneNumber.matches(check);
	}

	/**
	 * 驗證手機號方法
	 * 
	 * @param strPhoneNum
	 * @return
	 */
	public static boolean checkMobileNumberValid(String strPhoneNum)
	{
		if (null == strPhoneNum)
		{
			return false;
		}
		/**
		 * 匹配13、15、18開頭手機號 排除154 開頭手機號
		 * 匹配170、176、177、178開頭手機號
		 * 匹配規則參考當前(2015-04-29)百度百科“手機號”羅列號碼
		 */
		String checkphone = ^(((13|18)[0-9])|(15[^4,\D])|170|176|177|178)\d{8}$;
		return strPhoneNum.matches(checkphone);

	}

}

二 、Android Toast 工具類 打Toast 比較麻煩 抽取封裝了一下 傳值只傳Context String 或 Context StringID即可。

 

 

import android.content.Context;
import android.widget.Toast;

/**
 * Toast 工具類
 * 
 * @author blj
 * 
 */
public class ToastUtils
{

	/**
	 * 短提示 by resId
	 * 
	 * @param context
	 * @param resId
	 */
	public static void shortShowResId(Context context, int resId)
	{
		Toast.makeText(context, resId, Toast.LENGTH_SHORT).show();
	}

	/**
	 * 長提示 by resId
	 * 
	 * @param context
	 * @param resId
	 */
	public static void longShowResId(Context context, int resId)
	{
		Toast.makeText(context, resId, Toast.LENGTH_LONG).show();
	}

	/**
	 * 短提示 by String
	 * 
	 * @param context
	 * @param string
	 */
	public static void shortShowStr(Context context, String string)
	{
		Toast.makeText(context, string, Toast.LENGTH_SHORT).show();
	}

	/**
	 * 常提示 by String
	 * 
	 * @param context
	 * @param string
	 */
	public static void longShowStr(Context context, String string)
	{
		Toast.makeText(context, string, Toast.LENGTH_LONG).show();
	}

}

三、Android 剪切粘貼工具類

 

 

import android.annotation.SuppressLint;
import android.content.ClipboardManager;
import android.content.Context;

public class ClipBoardUtil {
	/**
	 * 實現文本復制功能 
	 * 
	 * @param content
	 */
	@SuppressLint(NewApi)
	public static void copy(Context context, String content) {
		// 得到剪貼板管理器
		ClipboardManager cmb = (ClipboardManager) context
				.getSystemService(Context.CLIPBOARD_SERVICE);
		cmb.setText(content.trim());
	}

	/**
	 * 實現粘貼功能 
	 * 
	 * @param context
	 * @return
	 */
	@SuppressLint(NewApi)
	public static String paste(Context context) {
		// 得到剪貼板管理器
		ClipboardManager cmb = (ClipboardManager) context
				.getSystemService(Context.CLIPBOARD_SERVICE);
		return cmb.getText().toString().trim();
	}

}

四、Android dp、px 轉換工具類

 

 

import android.content.Context;

/**
 * dp與px轉換工具
 * 
 */
public class DensityUtil
{
	/**
	 * 根據手機的分辨率從 dip 的單位 轉成為 px(像素)
	 */
	public static int dip2px(Context context, float dpValue)
	{
		final float scale = context.getResources().getDisplayMetrics().density;
		return (int) (dpValue * scale + 0.5f);
	}

	/**
	 * 根據手機的分辨率從 px(像素) 的單位 轉成為 dp
	 */
	public static int px2dip(Context context, float pxValue)
	{
		final float scale = context.getResources().getDisplayMetrics().density;
		return (int) (pxValue / scale + 0.5f);
	}

	public static int getPXFromString(Context context, String value)
	{
		String lowerValue = value.toLowerCase();
		
		if (lowerValue.endsWith(px))
		{
			return Integer.parseInt(lowerValue.substring(0, lowerValue.indexOf(px)));
		}
		else if (lowerValue.endsWith(dp) || lowerValue.endsWith(dip))
		{
			return dip2px(context, Integer.parseInt(lowerValue.substring(0, lowerValue.indexOf(d))));
		}
		else if (lowerValue.matches(\d+)) 
		{
			return Integer.parseInt(lowerValue);
		}
		else
		{
			throw new RuntimeException(轉換字符串不合法);
		}
	}
}


 

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