根据手机的分辨率从 dp 的单位 转成为 px(像素) :切勿在返回值后面+0.5增加精度 因为在某些低分辨率跟高分辨的手机上会有大的误差
public static int dip2px(Context context, float dpValue) { final float scale = context.getResources().getDisplayMetrics().density; return (int) (dpValue * scale); }根据手机的分辨率从 px(像素) 的单位 转成为 dp
public static int px2dip(Context context, float pxValue) { final float scale = context.getResources().getDisplayMetrics().density; return (int) (pxValue / scale); }SharePreference的存储和取值
public static final void putString(Context context, String prefKey, String key, String value) { SharedPreferences sp = context.getSharedPreferences(prefKey, Context.MODE_PRIVATE); sp.edit().putString(key, value).commit(); }
public static final String getString(Context context, String prefKey, String key, String defaultValue) { SharedPreferences sp = context.getSharedPreferences(prefKey, Context.MODE_PRIVATE); return sp.getString(key, defaultValue); }用来判断手机是否联网
public static boolean isNetworkAvailable(final Context context) { ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo(); return (networkInfo != null && networkInfo.isConnected()); }自定义toast
public static void showToast(String msg,Context context) { Toast toast = new Toast(context); LayoutInflater inflater = LayoutInflater.from(context); View view = inflater.inflate(R.layout.z_toast, null); ((TextView) view.findViewById(R.id.tv)).setText(msg); toast.setView(view); toast.setMargin(0, 0.2f); toast.show(); }拨打电话
public void call(String tel) { Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse(tel)); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); }隐藏键盘
public void hiddenSoftInput() { InputMethodManager manager = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); manager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); }