android组件之dialog

    对话框既可以用于弹出显示一些信息,也可以作为一个屏幕活动,用于简单的功能处理(登录系统)。

       首先做个列表下对话框

      创建个data.xml用于保存对话框选项

 

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="data">
        <item>beijing</item>
        <item>shanghai</item>
        <item>nanjin</item>
        <item>wuhan</item>
    </string-array>
</resources>
  接下来activity中的主要代码段如下:
	new AlertDialog.Builder(MainActivity.this)
					.setTitle("你喜欢的城市是?")   //设置标题
					.setIcon(R.drawable.ic_launcher)//设置对话框图标

					.setItems(R.array.data,   //设置对话框选项  这边还可以选择使用setSingleChoiceItems单选项对话框  
                                                                  //setMultiChoiceItems复选框对话框

							new DialogInterface.OnClickListener() {

								@Override
								public void onClick(DialogInterface dialog,
										int which) {
									String[] res = getResources()
											.getStringArray(R.array.data);//获取xml文件中的选项资源
									String text = "您选择了" + res[which];
									Toast.makeText(MainActivity.this, text,
											Toast.LENGTH_LONG).show();

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

								@Override
								public void onClick(DialogInterface dialog,
										int which) {
									// TODO Auto-generated method stub

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

								@Override
								public void onClick(DialogInterface dialog,
										int which) {

								}
							}).show();
  上面的例子包含了对话框的基础功能,下面介绍种文本对话框,通过布局文件实现

 先上效果图


一个登录对话框,首先在布局文件中配置个登录界面的布局

下面通过activity调用布局

LayoutInflater factory = LayoutInflater.from(MainActivity.this);
			View view = factory.inflate(R.layout.dialog, null);//加载布局文件
			new AlertDialog.Builder(MainActivity.this)
					.setTitle("登录")
					.setIcon(R.drawable.ic_launcher)
					.setView(view)

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

								@Override
								public void onClick(DialogInterface dialog,
										int which) {
									// TODO Auto-generated method stub

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

								@Override
								public void onClick(DialogInterface dialog,
										int which) {

								}
							}).show();



   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值