跳转到主内容
趣航编程网 - 趣学编程,启航技术之路!

Androd自定义对话框Dialog视图及参数传递的实现方法

今天给大家讲讲有关自定义对话框的相关内容,前面两篇都在在利用系统提供的函数来实现对话框,但局限性太大,当我们想自己定义视图的时候,就不能利用系统函数了,就需要我们这里的自定义对话框了,有关自定义对话框的东东,以前有写过一篇《android之Dialog相关》,写的不好,今天给大家重新写一篇

一、雏形构建

先给大家看下这小节的效果图:自定义一个对话框,内容是四个ImageView横排;

1、Dialog布局

根据上图的对话框样式,我们看一下Dialog的布局定义(custom_dialog.xml)

2、从Dialog派生对话框类

有关构造函数:

有三种构造函数,现在我这里使用重写了两个,这里只需要使用第一个,即传进去context即可;

有关OnCreate()在OnCreate()时,利用LayoutInflater获取我们对话框的View,然后利用SetContentView指定为我们CustomDialog类的布局。

public class CustomDialog extends Dialog {Context mContext;public CustomDialog (Context context){super(context);mContext = context;}public CustomDialog(Context context, int theme) {super(context, theme);mContext = context;}@Override protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);View layout = inflater.inflate(R.layout.custom_dialog, null);this.setContentView(layout);}}

3、主函数(MainActivity)

在MainActivity中,我们写一个Button,当用户点击的时候弹出我们自定义的对话框实例

MainActivity的布局:(activity_main.xml)

相关文章