安卓开发setpositivebutton用法?照着这个实例代码写就行。

吉云

大家今天跟大家唠唠我前两天捣鼓安卓APP时用到的一个东西——setPositiveButton

事情是这样的,我在做一个简单的功能,需要用户在执行某个操作前,弹个框确认一下,免得误操作嘛比如删除个东西或者保存个设置啥的。很自然就想到安卓自带的对话框(Dialog)。

找路子

安卓开发setpositivebutton用法?照着这个实例代码写就行。

我就开始琢磨怎么搞这个对话框。安卓里头,最常用的就是那个AlertDialog。要创建它,得先用一个叫的玩意儿。

行,那就开干。我先是创建一个Builder对象,然后给它设置个标题,比如“温馨提示”,再加点说明文字,告诉用户这个框是干嘛的,比如“您确定要删除这条记录吗?”。这都好办,用setTitle()setMessage()就行。

关键一步:加上“确定”按钮

光有提示不行,得让用户能点个按钮表示“确定”或者“同意”。这时候,我就找到今天的主角——setPositiveButton

这个方法名字挺直白的,"Positive"嘛就是积极的、肯定的意思。用它,就能往对话框上加一个“确定”按钮。用法也简单,你得给它两样东西:

    安卓开发setpositivebutton用法?照着这个实例代码写就行。

  • 按钮上显示的文字:比如“确定”、“好的”、“同意”之类的。
  • 点击按钮后要干的事:这个得通过一个监听器(Listener)来实现。简单说,就是你告诉程序,“当用户点这个‘确定’按钮后,你就去执行这段代码”。

我的实践过程

具体我是这么写的:

在我的Activity代码里,搞一个实例:

安卓开发setpositivebutton用法?照着这个实例代码写就行。

new *(this)

这里的this一般就是指当前的Activity。

然后,设置标题和消息:

.setTitle("提示")
.setMessage("确定要执行这个操作吗?")

就是用setPositiveButton

安卓开发setpositivebutton用法?照着这个实例代码写就行。

.setPositiveButton("确定", new *() {
@Override
public void onClick(DialogInterface dialog, int which) {
// 这里写点击“确定”后要干的活儿
// 比如调用一个删除数据的方法,或者发个通知啥的
doSomething();

安卓开发setpositivebutton用法?照着这个实例代码写就行。


你看,我在里面传“确定”这两个字,然后 new 一个 OnClickListener。重点就在那个 onClick 方法里面,你想让“确定”按钮干代码就写在那里头。

顺便提一句,通常有“确定”就有“取消”。我一般会再加一个setNegativeButton

.setNegativeButton("取消", null)

给它传个 null 作为监听器,意思就是点“取消”啥也别干,直接把对话框关就行,简单省事。

安卓开发setpositivebutton用法?照着这个实例代码写就行。

别忘把这个Builder创建成真正的对话框并显示出来:

.create().show();

这样一套下来,一个带“确定”和“取消”按钮的确认框就搞定。

结果

测试一下,效果不错。点“确定”,执行我写在onClick里的逻辑;点“取消”,对话框就消失。目的达到!

setPositiveButton就是安卓里给对话框添加“确定”类按钮的标准方法,用起来不复杂,但非常实用。基本上需要用户确认操作的地方,都离不开它。好,今天的实践分享就到这儿,希望能帮到有需要的朋友。

安卓开发setpositivebutton用法?照着这个实例代码写就行。

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]