项目地址
https://github.com/lynnchurch/AlertDialog
效果图
下面是一个仿ios风格的对话框效果图:
实现思路
继承Dialog,采用建造者模式,内部维持一个建造者Builder静态类来对对话框的标题,内容,积极按钮,消极按钮等部分进行设置,设置完成后使用create()
方法来完成AlertDialog对象的创建,最终使用show()
方法将对话框显示出来。
使用
用法如下所示:
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("提示标题").setMessage("你好,我是提示内容")
.setPositiveButton("确认", new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
// TODO Auto-generated method stub
showToast("您点击了确认");
}
})
.setNegativeButton("取消", new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
// TODO Auto-generated method stub
showToast("您点击了取消");
}
});
builder.create().show();
如需使用自定义风格则使用setContentView(View v)
,v为自定义视图对象,各控件的id须与原布局文件layout_dialog.xml
保持一致。