在android 项目中,因为系统版本的不一样,对话框的样式样会不一样,那么我们如何来统一呢?
接下来为大家介绍出自定义对话框外,系统给我们提供的方法,那就是调用系统的V7包,v7包提供了向下兼容的主题包,好,废话不多说,直接代码搞起!
第一把,我们创建AlertDilag对象 注意啦,这里必须是v7包的AlertDilag对象,
AlertDialog.Builder builder = new AlertDialog.Builder(ctx); builder.setTitle("提示"); builder.setMessage(content); builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { } }); builder.setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface arg0, int arg1) { } }); builder.show();
第二步,我们在AndroidManifest注册清单文件里使用activity主题
android:theme="@style/Theme.AppCompat.Light.NoActionBar"
或者我们直接使用下面这种方法:
AlertDialog.Builder builder= new AlertDialog.Builder(context,R.style.AlertDialogTheme).setIcon(R.drawable.icon).setTitle("温馨提示:").setMessage("message") .setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { } }).setNegativeButton("取消",null); dialog=builder.create(); dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);//全局 dialog.show();<style name="AlertDialogTheme" parent="Theme.AppCompat.Light.Dialog.Alert">//白色背景 v7包最后 我们就实现任何版本都是android 6.0版本样式的dialog了效果图如下: