这个方法显示的对话框是一个信息弹出框,没有按钮,只是进行信息的提示...id的作用设置弹出框显示的位置...View表示需要显示的视图...这样就创建了一个弹出框在指定的位置进行显示...
public void showDialog(int id,View view) {}
上面方法的执行过程中,会调用setDialogLayoutParams()函数去设置相关属性,设置弹出框布局的参数,也就是弹出框如何在屏幕上更好的显示的一个设置...
这是源码的调用过程,看起来并不是很难理解...
private void setDialogLayoutParams(Dialog dialog,int dialogPadding,int gravity){
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); //设置没有标题..
Window window = dialog.getWindow(); //获取窗口...
WindowManager.LayoutParams lp = window.getAttributes();//获取窗口属性...
//此处可以设置dialog显示的位置
window.setGravity(gravity); //设置窗口的对其方式...
//设置宽度
lp.width = diaplayWidth-dialogPadding;
lp.type = WindowManager.LayoutParams.TYPE_APPLICATION_ATTACHED_DIALOG;
//背景透明
//lp.screenBrightness = 0.2f;
lp.alpha = 0.8f;
lp.dimAmount = 0f;
window.setAttributes(lp);
// 添加动画
window.setWindowAnimations(android.R.style.Animation_Dialog);
// 设置点击屏幕Dialog不消失
dialog.setCanceledOnTouchOutside(false);
}
这个方法的弹出框是一个带有按钮的确认框,title和msg表示对话框的标题内容和提示内容...以及点击确认按钮时发生的监听事件的传递...
public void showDialog(String title,String msg,DialogInterface.OnClickListener mOkOnClickListener) {}
这个方法的弹出框和上面的唯一区别就是,弹出框的内容不是指定的字符串,而是一个我们自定义的一个视图..
public AlertDialog showDialog(String title,View view,DialogInterface.OnClickListener mOkOnClickListener) {}
弹出框基本都是这些模式...源码的实现非常的简单...原理都是对那些基本函数的一些封装...剩下的几个就不粘贴了..万变不离其宗。
以上就是本文的全部内容,希望对大家的学习有所帮助。
注:相关教程知识阅读请移步到Android开发频道。










