[Android 界面] Android: 自定义DIALOG

来源:互联网 发布:java spring编程实例 编辑:程序博客网 时间:2024/05/20 14:24

转自:http://www.eoeandroid.com/forum-viewthread-tid-70061-fromuid-106432.html  2011-04-20  13:58:30

 

一、如何实现自己定义的对话框

在android的ApiDemos中的com.example.android.apis.graphics包下,有一个ColorPickerDialog类,是经典的自定义对话框的例子,我们在去除一些代码,剩下的主框架代码如下(代码中的注释详细注明每个类和方法的用途):

自定义的对话框,如图所示:

1.png



二、创建自定义Dialog的关键只有两个步骤

1.创建一个需要在自定义Dialog显示的自定义View,创建这个自定义View时,既可以在这个View的构造方法中用android自带的控件把自定义View构造出来;也可以在自定义View的@Override protected void onDraw(Canvas canvas)方法中,把自定义View绘制出来

2.在自定义Dialog的@Override protected void onCreate(Bundle savedInstanceState)方法中,通过setContentView(自定义View);方法,把我们的自定义View显示出来

在创建好自定义Dialog后,我们在别的类中,只要调用自定义Dialog的构造函数就可以把自定义Dialog显示出来。对于ColorPickerDialog这个类,调用语句如下:new ColorPickerDialog(getContext(), listener, mPaint.getColor()).show();

下面提供一个在自定义View的构造函数中把View构造出来的例子:

此自定义Dialog的效果图如下:

2.png