第26讲 对话框AlertDialog的自定义实现

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 16:37   4122   0

26讲对话框AlertDialog的自定义实现

比如我们在开发过长当中,要通过介绍系统发送的一个广播弹出一个dialog。但是dialog必需是基于activity才能呈现出来,如果没有activity的话,程序就会崩溃。所以我们可以写一个自定义的dialog,把它定义成一个activity。这样我们收到一条打开dialog的广播后,直接启动这个activity,程序正常运行~~

自定义dialog能让开发者做出自己五彩缤纷的Activity,而不用去使用系统枯燥的界面。

使用LayoutInflater把自定义的view放入AlertDialog当中进行显示。

public void test5(Viewview) {

AlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this);

LayoutInflater factory = LayoutInflater.from(this);

final View textEntryView = factory.inflate(R.layout.test, null);

builder.setIcon(R.drawable.icon);

builder.setTitle("自定义输入框");

builder.setView(textEntryView);

builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int whichButton) {

EditText userName = (EditText) textEntryView.findViewById(R.id.etUserName);

EditText password = (EditText) textEntryView.findViewById(R.id.etPassWord);

showDialog("姓名 :" + userName.getText().toString() + "密码:" + password.getText().toString() );

}

});

builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int whichButton) {

}

});

builder.create().show();

}

转载于:https://www.cnblogs.com/anyuan9/p/6171596.html

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP