Android中对话框的工具类
生活随笔
收集整理的這篇文章主要介紹了
Android中对话框的工具类
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Android中對話框的工具類,里面總結了比較好用的方法,直接調用即可
public class DialogUtils {private DialogUtils() {}private static AlertDialog mTipsDialog;private static ProgressDialog mProgressDialog = null;private static final String DIALOG_UTIL_TAG = "DialogUtils ";// 彈窗提示信息public static void showHintDialog(Context context, String title, String tips) {LinearLayout layout_dialog = new LinearLayout(context);layout_dialog.setOrientation(LinearLayout.VERTICAL);// 標題TextView tv_title = new TextView(context);LinearLayout.LayoutParams para_tv = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);tv_title.setLayoutParams(para_tv);tv_title.setGravity(Gravity.CENTER);tv_title.setTextSize(15);tv_title.setPadding(ScaleUtils.dip2px(context, 10), ScaleUtils.dip2px(context, 10), ScaleUtils.dip2px(context, 10), ScaleUtils.dip2px(context, 10));layout_dialog.setGravity(Gravity.CENTER_VERTICAL);// 間隔線int mWidth = DisplaySizeUtils.getDisplaySizeInfo(context).x;TextView mDiv_Line_tip = new TextView(context);mDiv_Line_tip.setWidth(mWidth - ScaleUtils.dip2px(context, 10));mDiv_Line_tip.setHeight(ScaleUtils.dip2px(context, 0.75f));mDiv_Line_tip.setBackgroundColor(Color.parseColor("#D1D3D5"));tv_title.setText(title);if (title != null) {layout_dialog.addView(tv_title);layout_dialog.addView(mDiv_Line_tip);}// 提示信息TextView tv_content = new TextView(context);tv_content.setLayoutParams(para_tv);tv_content.setTextSize(13);tv_content.setPadding(ScaleUtils.dip2px(context, 10), ScaleUtils.dip2px(context, 10), ScaleUtils.dip2px(context, 10), ScaleUtils.dip2px(context, 10));tv_content.setText(tips);layout_dialog.addView(tv_content);layout_dialog.setGravity(Gravity.CENTER_VERTICAL);//確認按鈕TextView tv_conferm = new TextView(context);LinearLayout.LayoutParams para_tv1 = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, ScaleUtils.dip2px(context, 50));tv_conferm.setText("知道了");tv_conferm.setLayoutParams(para_tv1);tv_conferm.setTextSize(17);tv_conferm.setTextColor(Color.WHITE);tv_conferm.setBackgroundColor(Color.parseColor("#398DEE"));tv_conferm.setGravity(Gravity.CENTER);tv_conferm.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View arg0) {mTipsDialog.dismiss();}});layout_dialog.addView(tv_conferm);mTipsDialog = new AlertDialog.Builder(context).setView(layout_dialog).create();mTipsDialog.setCancelable(false);mTipsDialog.setCanceledOnTouchOutside(false);mTipsDialog.show();}/*** 顯示Dialog* @param context 上下文* @param isCCancel 是否點擊Dialog邊緣取消Dialog*/public static void showProgressDialog(Context context, boolean isCCancel) {if (null == mProgressDialog) {mProgressDialog = new ProgressDialog(context);mProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);mProgressDialog.setIndeterminate(false); // 設置ProgressDialog 的進度條是否不明確mProgressDialog.setMessage("正在加載...");mProgressDialog.setCancelable(isCCancel); // 設置ProgressDialog是否可以按退回按鍵取消mProgressDialog.setCanceledOnTouchOutside(isCCancel);//設置ProgressDialog是否可以點擊非窗口區域取消}mProgressDialog.show();} /*** 顯示Dialog* @param context 上下文* @param msg 彈框要顯示的文本信息* @param isCCancel 是否點擊Dialog邊緣取消Dialog*/public static void showProgressDialog(Context context,String msg, boolean isCCancel) {if (null == mProgressDialog) {mProgressDialog = new ProgressDialog(context);mProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);mProgressDialog.setIndeterminate(false); // 設置ProgressDialog 的進度條是否不明確mProgressDialog.setMessage(msg);mProgressDialog.setCancelable(isCCancel); // 設置ProgressDialog是否可以按退回按鍵取消mProgressDialog.setCanceledOnTouchOutside(isCCancel);//設置ProgressDialog是否可以點擊非窗口區域取消}mProgressDialog.show();}/*** 隱藏Dialog* 由于統一管理Dialog,注意Activity/Fragment生命周期對它的影響*/public static void hideProgressDialog() {if (null != mProgressDialog) {if (mProgressDialog.isShowing()) {mProgressDialog.dismiss();}mProgressDialog = null;}}}總結
以上是生活随笔為你收集整理的Android中对话框的工具类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 英雄联盟全部英雄资料怎么查(给英雄一个新
- 下一篇: Android中Log日志的管理之log