android AlertDialog 工具类
来源:互联网 发布:多张表格数据条件汇总 编辑:程序博客网 时间:2024/05/16 10:19
用v7 包里的AlertDialog 做了一个简单的工具类封装
源码地址https://github.com/1104436107/AlertDialog_master_milaoshu/tree/master
public void onClick(View v) { switch (v.getId()) { case R.id.check_update: Dialog.showDefaultDialog(this, "应用更新", "你好检测到新版本请更新", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { switch (which) { case DialogInterface.BUTTON_POSITIVE: break; case DialogInterface.BUTTON_NEUTRAL: break; case DialogInterface.BUTTON_NEGATIVE: break; } Toast.makeText(MainActivity.this, which + "", Toast.LENGTH_SHORT).show(); } }); break; case R.id.custom_dialog: Dialog.showCustomDialog(this, "温馨提示", "您的EQ不足,请及时充值", new Dialog.OnClickDialogListener() { @Override public void OnOnClickDialogListener(int id, AlertDialog dialog) { switch (id) { case R.id.tv_submit: Toast.makeText(MainActivity.this,"确定", Toast.LENGTH_LONG).show(); dialog.dismiss(); break; case R.id.tv_cancel: Toast.makeText(MainActivity.this,"取消", Toast.LENGTH_LONG).show(); dialog.dismiss(); break; } } }); break; }}
1
这里写图片描述
/*
* @param mContext Activity 上下文
* @param mTitle 标题
* @param mContent 显示内容
* @param diologlistener 接口回调
*/
public static DialogInterface.OnClickListener mDiologListener; public static void showDefaultDialog(Context mContext, String mTitle, String mContent, DialogInterface.OnClickListener diologlistener) { mDiologListener = diologlistener; final AlertDialog dialog = new AlertDialog.Builder(mContext).create(); dialog.setTitle(mTitle); dialog.setCancelable(false); dialog.setCanceledOnTouchOutside(false); float density = mContext.getResources().getDisplayMetrics().density; TextView tv = new TextView(mContext); tv.setMovementMethod(new ScrollingMovementMethod()); tv.setVerticalScrollBarEnabled(true); tv.setTextSize(14); tv.setMaxHeight((int) (250 * density)); dialog.setView(tv, (int) (25 * density), (int) (15 * density), (int) (25 * density), 0); tv.setText(mContent); dialog.setButton(DialogInterface.BUTTON_POSITIVE, "确定", mDiologListener); dialog.setButton(DialogInterface.BUTTON_POSITIVE, "立即更新", mDiologListener); dialog.setButton(DialogInterface.BUTTON_NEGATIVE, "以后再说", mDiologListener); dialog.setButton(DialogInterface.BUTTON_NEUTRAL, "忽略该版", mDiologListener); dialog.show(); }
2
/*
* @param mContext Activity 上下文
* @param mTitle 标题
* @param mContent 显示内容
* @param diologlistener 接口回调
*/
public static OnClickDialogListener mOnClickListener; public static interface OnClickDialogListener{ void OnOnClickDialogListener(int tv_title, AlertDialog dialog); } public static void showCustomDialog(Context mContext, String mTitle, String mContent, final OnClickDialogListener OnClickListener) { AlertDialog.Builder builder = new AlertDialog.Builder(mContext); final AlertDialog dialog = builder.create(); View view = LayoutInflater.from(mContext).inflate(R.layout.dialog_custom, null); TextView tv_title = (TextView) view.findViewById(R.id.tv_title); TextView tv_content = (TextView) view.findViewById(R.id.tv_content); TextView tv_submit = (TextView) view.findViewById(R.id.tv_submit); TextView tv_cancel = (TextView) view.findViewById(R.id.tv_cancel); tv_title.setText(mTitle); tv_content.setText(mContent); tv_submit.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { OnClickListener.OnOnClickDialogListener(R.id.tv_submit,dialog); } }); tv_cancel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { OnClickListener.OnOnClickDialogListener(R.id.tv_cancel,dialog); } }); dialog.setView(view, 0, 0, 0, 0); dialog.show(); }
0 0
- android AlertDialog 工具类
- AlertDialog简单工具类
- android AlertDialog类
- android alertdialog
- Android: AlertDialog
- Android AlertDialog
- Android AlertDialog
- Android AlertDialog
- android alertdialog
- Android alertDialog
- android alertDialog
- Android alertDialog
- Android alertDialog
- Android AlertDialog
- Android---AlertDialog
- android alertDialog
- Android - AlertDialog
- android *** AlertDialog
- linux初级学习之虚拟机自动安装2-1
- Android客制化------在设置中加入RAM flash计算
- 动态规划—01最长子序列
- python文件和目录操作方法大全(含实例)
- echarts 的ajax
- android AlertDialog 工具类
- 使用Semaphore控制某个方法允许并发访问的线程的个数
- 程序员的写作观
- c#中的委托与事件
- android 代码混淆
- 第四章 Controller接口控制器详解(5)
- C语言内存管理
- js验证
- MapReduce job运行的几种模式