作者:Antonio Leiva

时间:Mar 9, 2017

原文链接:https://antonioleiva.com/dialogs-android-anko-kotlin/

借助Builder,在Android创建警告提示和对话框相对来说是件简单的事,但是由于语言繁杂,有些提示通常就变得十分含糊。

在Kotlin中,仅Lambda表达式,可以帮助我们理解一点代码是怎样处理的。

但是,有了Anko,我们能够这一切都更加简单,在这篇文章中我们看到是怎么回事。

在Kotlin用Anko做警告提示

通过Anko编写警告提示是非常容易的。只需要创建一个alert代码块:

1 alert("Testing alerts") {
2     ...
3 }.show()

在这个代码块中,你能够规定一些事情,如提示的标题,或你要显示的按钮:

1 alert("Testing alerts") {
2     title("Alert")
3     yesButton { toast("Yess!!!") }
4     noButton { }
5 }.show()

这块代码的结果是这样的:

你还可以用positiveButtonnegativeButtonneutralButton方法定制一些动作:

1 alert("Testing alerts") {
2     title("Alert")
3     positiveButton("Cool") { toast("Yess!!!") }
4     negativeButton("Never Ever") { }
5     neutralButton("I'll think about it")
6 }.show()

当然,你甚至还能通过Anko加定制的视图:

 1 alert {
 2     title("Alert")
 3     positiveButton("Cool") { toast("Yess!!!") }
 4     customView {
 5         linearLayout {
 6             textView("I'm a text")
 7             button("I'm a button")
 8             padding = dip(16)
 9         }
10     }
11 }.show()

进度对话框

Anko还有另一特性,可以创建进度对话框,和不确定进度。

这里给出第二例子,你能够用这样一个简单的方法,创建进度对话框:

1 indeterminateProgressDialog("This a progress dialog").show()

其结果如下:

结论

由于有了Anko和Kotlin,如你所见创建小的DSL是件简单的事。理想情况下,你可以在框架的任何一个部分创建DSL,所以它使得交互非常容易。

在稍后的文章中,我们说明怎样通过SQLite处理数据库。

现在,是否该阅读免费使用指南,来学习如何构建你的第一个项目?或是读本书,学习如何从头开始创建一个完整的应用程序?

转载于:https://www.cnblogs.com/figozhg/p/6854179.html

用Anko和Kotlin实现Android上的对话框和警告提示(KAD 24)相关推荐

  1. 使TextView在Android上可滚动

    我在textview中显示的文本似乎太长,无法容纳在一个屏幕中. 我需要使TextView可滚动. 我怎样才能做到这一点? 这是代码: final TextView tv = new TextView ...

  2. 我被 Kotlin 和 Android 两个官方约谈了

    跟 Kotlin 和 Android 官方聊了聊 大家好,我是扔物线朱凯. 废话不多说,这次我邀请到了 JetBrains 的范圣佑和 Google Android 团队的 Fred 来到我的视频里, ...

  3. android 协程,Android 上的 Kotlin 协程

    协程是一种并发设计模式,您可以在 Android 平台上使用它来简化异步执行的代码.协程是在版本 1.3 中添加到 Kotlin 的,它基于来自其他语言的既定概念. 在 Android 上,协程有助于 ...

  4. Kotlin转向谷歌云平台,因此开发人员可以像在Android上一样喜欢它。Kotlin是Android开发者的宠儿语言。...

    image [中文翻译在后面] Android developers love Kotlin. Google can tell us that 27% of the top 1,000 Android ...

  5. Kotlin on Android 开发环境介绍

    Kotlin 被 Google 采纳为 Android 开发一级编程语言,到现在也一年多了,我们团队从去年 10 月份开始部分项目尝试用 Kotlin 开发,到现在决定推广到全部项目,因为一旦用上 K ...

  6. 使用Kotlin开发Android应用初体验

    使用Kotlin开发Android应用初体验 昨晚,最近一届的谷歌IO大会正式将Kotlin确定为了官方开发语言,作为一名Android开发鸟,怎么能不及时尝尝鲜呢? Kotlin的简要介绍 在开发之 ...

  7. 第14章 使用Kotlin 进行 Android 开发

    2019独角兽企业重金招聘Python工程师标准>>> 第14章 使用Kotlin 进行 Android 开发 根据Realm Report (2017-Q4,https://rea ...

  8. 如何在Android上显示警报对话框?

    我想显示一个对话框/弹出窗口,并向用户显示"您确定要删除此条目吗?"的消息. 一个带有"删除"按钮. 触摸Delete ,它应删除该条目,否则不删除任何条目. ...

  9. 使用Kotlin的Android ListView

    In this tutorial, we'll implement ListView in our Android apps using Kotlin. 在本教程中,我们将使用Kotlin在Andro ...

最新文章

  1. linux c 得到指定进程内存占用
  2. sqlite3 C接口基础
  3. 每天学一点儿shell:Linux三剑客——grep命令
  4. 华为云welink考试试题_华为内部开启WeLink项目,华为云是这样考虑的-通信/网络-与非网...
  5. MyBatis关联查询,表字段相同,resultMap映射问题的解决办法
  6. sqlserver迁移数据到mysql_SQLServer数据库之将ABP的数据库从SQLSERVER迁移到MySql
  7. 【python】内存相关
  8. Quote Form OnLoad Implement Add Leftnav, count Activities
  9. 华硕笔记本 X550JD4710HQ
  10. C#编程(二十三)----------实现继承
  11. Oracle查询结果随机排序(去重,抽检)
  12. 基于 Django 的图书馆借阅系统
  13. html 菜鸟驿站,菜鸟驿站
  14. android 去掉google搜索,Android 7.1 去掉桌面上的谷歌搜索框
  15. Java解决vue跨域问题
  16. 基于PHP的酒店住宿管理系统 毕业设计源码261455
  17. iOS设备指纹的前世今生
  18. 传统企业如何应对数字化转型?这篇文章给你答案
  19. Redis基础与高可用集群架构进阶详解
  20. Acala TC4 糖果节历程总结

热门文章

  1. STC89C52单片机 点亮LED灯
  2. C++ 字符ASC排序
  3. Python 多进程、多线程启动
  4. Dev c++工具将C代码生成dll文件以及如何调用dll文件
  5. 03-spring bean
  6. 验证码画布生成以及点击图片切换验证码
  7. ES6--函数的扩展
  8. Qt5.3.2openglVS2010_QSqlField_字段类型
  9. Netsharp下微信菜单以及OAuth
  10. 为何Apache下.htaccess不起作用,Linux、Windows详解