设为首页 加入收藏

TOP

Android学习笔记之具有选择功能的对话框
2014-11-24 03:19:54 来源: 作者: 【 】 浏览:1
Tags:Android 学习 笔记 具有 选择 功能 对话

为了实现具有选择功能的对话框这一程序,首先我们来介绍一个非常有用的组件——AlertDialog。


java.lang.Object


    |-- android.app.AlertDialog


从继承关系中我们可以看出,AlertDialog直接继承自Dialog。我们知道,Dialog窗口主要目的是与User确认及互动,用于“程序提示”,“警告”或“确认”等,是android应用程序中非常重要的一部分。


在android sdk中,虽然有许多窗口,但真正具有交互功能的则为AlertDialog对话窗口。AlertDialog同样提供了一个静态的嵌套类AlertDialog.Builder供开发者使用。


AlertDialog可以以列表项目的方式来显示内容,这种显示方式也是非常常见的,如用于投票、选择器以及遥控器等应用程序。


程序运行效果:




Activity程序如下所示,注意在第二个AlertDialog对话框中设置了两个按钮,但由于本程序重在说明AlertDialog用法,故未添加具体的实现。


public class MainActivity extends Activity
{
private Button button=null;

@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
super.setContentView(R.layout.activity_main);
this.button=(Button)super.findViewById(R.id.button);
//设置按钮单击消息响应
this.button.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
//新建AlertDialog对话框
new AlertDialog.Builder(MainActivity.this)
.setTitle(R.string.string_alert_title)
.setItems(R.array.items_dialog,new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
//取出响应字符串资源
CharSequence string_body=MainActivity.this.getResources().getString(R.string.string_alert_body);
final String[] colors=MainActivity.this.getResources().getStringArray(R.array.items_dialog);
//弹出新的对话框
new AlertDialog.Builder(MainActivity.this)
.setMessage(string_body+colors[which])
.setNeutralButton(R.string.string_alert_ok, new DialogInterface.OnClickListener() //确认操作
{
@Override
public void onClick(DialogInterface dialog, int which)
{
//添加操作
}
})
.setNegativeButton(R.string.string_alert_cancel, new DialogInterface.OnClickListener() //取消操作
{
@Override
public void onClick(DialogInterface dialog, int which)
{
dialog.dismiss();
}
}).show();
}
}).show();
}
});
}


}


布局文件非常简单,只有一个Button组件,此处不再给出。

字符串资源文件如下:


< xml version="1.0" encoding="utf-8" >


demo3
Settings
Hello world!
选择颜色
请选择您喜欢的颜色
你选择的是:
确认
取消


红色
绿色
蓝色



】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android学习笔记之打钩显示输入的.. 下一篇Android学习笔记之ProgressDialog..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·C语言中如何将结构体 (2025-12-24 22:20:09)
·纯C语言结构体成员变 (2025-12-24 22:20:06)
·C语言中,指针函数和 (2025-12-24 22:20:03)
·哈希表 - 菜鸟教程 (2025-12-24 20:18:55)
·MySQL存储引擎InnoDB (2025-12-24 20:18:53)