【我们都爱Paul Hegarty】斯坦福IOS8公开课个人笔记39 Alert&ActionSheet

Alert和ActionSheet是IOS中弹出消息的两个工具。
首先它们都是Modal的方式展示的。

Alert用来向用户发起询问,可以有一个(比如取消)或两个选项(比如确定和取消),也可以附带一个文本框(比如要求用户输入密码)
Action Sheet从屏幕底部滑出,提供一些分支的选项,选项的数量可以大于两个。
对比如图:

Action Sheet和Alert都可以使用UIAlertController来创建,比如创建一个Action Sheet,在构造器中制定它的title和简介,注意Style选择ActionSheet:

至于Action Sheet中的栏目你需要单独添加,使用UIAlertAction构造器:

在IOS的API中,handler就是一个闭包。
详细的情况如下图:

注意到Clouseup of Sun是红色的,这不是我们设置了它的颜色,而是它的类型是Destructive,如果你想要让某个栏目起到关闭的作用,选择这种style,最后cancle也是一种类型,可以看到它明显是独立于上面的栏目的。点击cancel可以返回之前的页面。那么如何让我们的Action Sheet显示到屏幕上呢,使用方法presentViewController,整个方法就是让某个控制器成为当前的控制器:

completion是一个闭包,当ActionSheet呈现到页面上的时候调用。
在ipad中是以popover的方式呈现的

Alert的用法是类似的

我们想要在Alert中添加一个文本框,方法如下:

一旦调用了这个方法,闭包中设置的文本框就会起作用,这里给文本框设置了一个占位符。
你可以使用下面的做法来设置一个Login的判断:

你可能感兴趣的:(ios,alert,swift,斯坦福)