swift系列:新手村第二周
来源:互联网 发布:mac中的远程光盘 编辑:程序博客网 时间:2024/06/02 05:17
上周一半忙一半懒,没输出.......
1.异步运行
let alert = UIAlertController(title: title, message: message, preferredStyle: .alert)
present(alert, animated: true, completion: nil)
…
…
此处present()只是让对话框alert显示在屏幕上,然后就迅速返回,写在其后面的语句会继续执行下去,而不会等待对话框关闭。
(注:原文中是presentViewController(),我学习的时候swift已升级)
1)iOS中,对话框的运行是异步(asynchronously)的。
2) 同步运行:其它代码必须等待当前的代码完成后才能继续执行;
异步运行:其它代码无需等待当前的代码完成后就可继续执行;
比如一些需要在后台执行的处理,不能或不需等待其完成才进行后续处理。
2.提示框
1)使用UIAlertController定义提示框,包括提示框的文字内容,以及外观样式
let alert = UIAlertController(title: title, message: message, preferredStyle: .alert)
2)使用UIAlertAction定义提示框上的按钮对象,包括按钮上的文字内容,以及它的外观显示;
let action = UIAlertAction(title: btn_message, style: .default, handler: nil)
第3个参数handler告诉提示框对象当按钮被触碰时应该发生什么事情,nil意味着什么也不会发生
3)使用addAction往提示框上添加按钮
alert.addAction(action)
3.callback回调模式
当触碰提示框上的按钮,它就会把自己从屏幕上删除,并发送一条消息。这就是callback(回调)模式。
iOS中有几种方式来实现:
1)闭包
let action = UIAlertAction(title: btn_message, style: .default, handler: {action in self.方法1 self.方法2})
把触碰按钮后要执行的动作,放到一个块语句中,做为handler的参数。
这种块语句被称为closure(闭包)。
在closure(闭包)中必须使用self来代表视图控制器。这是因为闭包可以capture(捕获)变量,引起一些副作用(还没学到,待补充。。。)
2)其它的还没学到,待补充。。。
- swift系列:新手村第二周
- swift系列:新手村第一周
- Swift学习第二天
- 第二节 Swift 注释
- swift 学习第二讲
- Swift第二天学习
- Swift学习第二枪
- swift学习第二天
- Swift完整教程系列
- 第二节 Swift流程控制
- 第二章 Swift 基础语法
- swift學習第二天
- 新手村之数组
- 新手村之简单字符串
- 新手村 循环 三连击
- 新手村 循环 级数求和
- 新手村 循环 数字反转
- 新手村 循环 计数问题
- 区块链基础
- 为什么线程同步的时候pthread_cond_t要和pthread_mutex_t同时使用
- Java 异常
- win10 安装tensorflow 并测试mnist
- win10+ubuntu双系统,用refind引导
- swift系列:新手村第二周
- C++ STL的使用(vector)
- c语言如何实现函数重载
- 计算机网络基础学习笔记--网络层
- HDP 2.5集成Sqoop2
- 分析C标准库中通用排序函数 qsort,并进行举例排序(数字篇)
- 欢迎使用CSDN-markdown编辑器
- 一种简单的图像白平衡计算方法
- ZOJ 3956 Course Selection System 01背包