// MARK: 提示框

func _initAlertView() {

let btn = UIButton(type: UIButtonType.ContactAdd)

btn.frame = CGRect(x: 100, y: 150, width: 50, height: 50)

btn.addTarget(self, action: "showAlert", forControlEvents: UIControlEvents.TouchUpInside)

self.view.addSubview(btn)

}

func showAlert() {

//        let alertView = UIAlertView(title: "警告", message: "密码错误", delegate: self, cancelButtonTitle: "取消", otherButtonTitles: "确定")

////        let alertView = UIAlertView(title: "警告", message: "密码错误", delegate: self, cancelButtonTitle: "取消")

//

//        //设置alertView的样式

//        alertView.alertViewStyle = UIAlertViewStyle.LoginAndPasswordInput

//        alertView.show()

let alertCtrl = UIAlertController(title: "温馨提示", message: "输入账号和密码", preferredStyle: UIAlertControllerStyle.Alert)

alertCtrl.addTextFieldWithConfigurationHandler { (textField) -> Void in

textField.placeholder = "输入账号"

}

alertCtrl.addTextFieldWithConfigurationHandler { (textField) -> Void in

textField.placeholder = "输入密码"

textField.secureTextEntry = true

}

let sureAction = UIAlertAction(title: "确定", style: UIAlertActionStyle.Destructive) { (alertAction) -> Void in

let tfs: [UITextField] = alertCtrl.textFields!

let tf1: UITextField = tfs[0]

let tf2: UITextField = tfs[1]

print("确定:\(alertAction.title)")

print(tf1.text)

print(tf2.text)

}

let cancelAction = UIAlertAction(title: "取消", style: UIAlertActionStyle.Destructive) { (alertAction) -> Void in

print("取消:\(alertAction.title)")

}

alertCtrl.addAction(sureAction)

alertCtrl.addAction(cancelAction)

self.presentViewController(alertCtrl, animated: true, completion: nil)

}

// MARK: 提示界面

func _initActionSheet() {

let btn = UIButton(type: UIButtonType.InfoDark)

btn.frame = CGRect(x: 200, y: 150, width: 50, height: 50)

btn.addTarget(self, action: "showActionSheet", forControlEvents: UIControlEvents.TouchUpInside)

self.view.addSubview(btn)

}

func showActionSheet() {

//        let actionSheet = UIActionSheet(title: "提示", delegate: self, cancelButtonTitle: "取消", destructiveButtonTitle: "确定", otherButtonTitles: "按钮1", "按钮2")

//        actionSheet.showInView(self.view)

let alertCtrl = UIAlertController(title: "提示", message: "重点提示Message", preferredStyle: UIAlertControllerStyle.ActionSheet)

let sureAction = UIAlertAction(title: "确定", style: UIAlertActionStyle.Default) { (alertAction) -> Void in

print("确定:\(alertAction.title)")

}

let cancelAction = UIAlertAction(title: "取消", style: UIAlertActionStyle.Cancel) { (alertAction) -> Void in

print("取消:\(alertAction.title)")

}

alertCtrl.addAction(sureAction)

alertCtrl.addAction(cancelAction)

self.presentViewController(alertCtrl, animated: true, completion: nil)

}

// MARK: UISegmentedControl 两种创建方式都实用

func _initsegmentControl() {

// 1.0 设置按钮的标题数组

let array: [String] = ["选择","搜索","工具"]

// 1.1 创建分段控件

let segmentCtrl = UISegmentedControl(items: array)

segmentCtrl.frame = CGRect(x: 100, y: 100, width: 150, height: 25)

// 1.2 设置默认选中按钮

segmentCtrl.selectedSegmentIndex = 0

segmentCtrl.addTarget(self, action: "segmentAction:", forControlEvents: UIControlEvents.ValueChanged)

self.view.addSubview(segmentCtrl)

// 2.0 设置按钮的标题数组

let arrayString:[String] = ["11","22","33"];

// 2.1 创建分段控件

let segmentContrl = UISegmentedControl(items: arrayString)

segmentContrl.frame = CGRectMake(100, 200, 200, 50)

// 2.2 设置默认选中按钮

segmentContrl.selectedSegmentIndex = 2

segmentContrl.addTarget(self, action: "segmentAction:", forControlEvents: UIControlEvents.ValueChanged)

self.view.addSubview(segmentContrl)

}

func segmentAction(segment: UISegmentedControl) {

print(segment.selectedSegmentIndex)

switch segment.selectedSegmentIndex{

case 0:

print("选择")

case 1:

print("搜索")

case 2:

print("工具")

default: break

}

}

Swift UIAlertController、UISegmentedControl的更多相关文章

  1. UISwitch(开关控件)、UISegmentedControl(分段控件)

    一.UISwitch 1.初始化 UISwitch *s1 = [[UISwitch alloc]initWithFrame:CGRectMake(50, 170, 100, 200)];   2.设 ...

  2. iOS开发之七:常用控件--UISlider、UISegmentedControl、UIPageControl的使用

    一.UISlider的使用 其实UISlider在iOS开发中用的似乎不是很多,我们看到的用到的地方多是音乐播放器的音量控制,以及视频播放器中的音量控制. 还是记录一下吧! 1.常用属性 // 设置获 ...

  3. UI中一些不常用的控件UIActivityIndicatorView、UIProgressView、UISegmentedControl、UIStepper、UISwitch、UITextView、UIAlertController

    //UIActivityIndicatorView //小菊花,加载 #import "ActivityIndicatorVC.h" @interface ActivityIndi ...

  4. UI-不常用控件 UIActivityIndicatorView、UIProgressView、UISegmentedControl、UIStepper、UISwitch、UITextView、UIAlertController

    1 //UIActivityIndicatorView //小菊花,加载================================================================ ...

  5. [Swift]UIAlertController 以及 Swift 中的闭包和枚举

    原文地址:http://blog.callmewhy.com/2014/10/08/uialertcontroller-swift-closures-enum/ 在 iOS8 的 SDK 中, UIK ...

  6. 友盟(Swift)-集成、统计用户数量、具体页面访问数量、具体按钮点击数量

    什么是友盟.有什么用? 这些傻瓜问题这里就不解释了,可以自己百度去. 友盟提供的文档和demo都是oc的,这里用swift写了一个小demo,在此分享一下. 步骤1:友盟后台注册应用(iOS),拿到a ...

  7. [转载] 对象存储(2):OpenStack Swift——概念、架构与规模部署

    原文: http://www.testlab.com.cn/Index/article/id/1085.html#rd?sukey=fc78a68049a14bb228cb2742bdec2b9498 ...

  8. Openstack Swift 原理、架构与 API 介绍

    OpenStack Swift 开源项目提供了弹性可伸缩.高可用的分布式对象存储服务,适合存储大规模非结构化数据.本文将深入介绍 Swift 的基本设计原理.对称式的系统架构和 RESTful API ...

  9. swift 实践- 08 -- UISegmentedControl

    import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoa ...

随机推荐

  1. 生信实验室收集---Dana Pe'er Lab

    Dana Pe'er Lab of Computational Systems Biology Dana Pe'er是哥伦比亚大学生物科学系的副教授,被认为是计算系统生物学的主要研究人员之一.Dana ...

  2. HDU5299 圆的扫描线 && 树上删边博弈

    HDU5299 圆的扫描线 && 树上删边博弈 标签(空格分隔): 未分类 给出若干个圆,可以互相嵌套但不相交或相切. 每次删去一个圆和它内部的圆,进行博弈,问谁赢. 分成两部分.首先 ...

  3. LA 3971 组装电脑(二分)

    https://vjudge.net/problem/UVALive-3971 题意:你有b块钱,想要组装一台电脑.给出n个配件各自的种类.品质因子和价格,要求每种类型的配件各买一个,总价格不超过b, ...

  4. Java环境搭建指南

    1.1 配置Java环境 1.  下载并安装Jdk1.7或Jdk1.8 http://www.oracle.com/technetwork/java/javase/downloads/index.ht ...

  5. hibernate:inverse、cascade,一对多、多对多详解

    1.到底在哪用cascade="..."? cascade属性并不是多对多关系一定要用的,有了它只是让我们在插入或删除对像时更方便一些,只要在cascade的源头上插入或是删除,所 ...

  6. git代码版本回退

    git log 用于查看我们修改提交的快照记录(commit记录),然后会有个commit修改记录的id编号,该命令显示从最近到最远的提交日志,我们可以看到3次提交记录,如下: git checkou ...

  7. 2017 年你应该尝试的 25 个 Android 库

    1.Lottie 由 Airbnb 推出,支持将 Adobe After Effects 动画通过 Bodymovin 导出成 JSON,并在手机上渲染它们.目前已经有超过 8600 颗 star,相 ...

  8. C#/JAVA 程序员转GO/GOLANG程序员笔记大全(DAY 00)

    一.安装说明 https://studygolang.com/dl 二.环境变量 // 下载 *.msi 安装文件,部分环境变量默认配置好了. 其他配置如下描述 三.目录及项目层级关系 在系统环境变量 ...

  9. Highcharts 散点图

    Highcharts 散点图 配置 chart 配置 配置 chart 的 type 为 'scatter' .chart.type 描述了图表类型.默认值为 "line". ch ...

  10. JavaScript---js的模块化

    js的模块模式被定义为给类提供私有和公共封装的一种方法,也就是我们常说的“模块化”. 怎么实现“模块化”? 通过闭包的原理来实现“模块化”  ,具体实现:1.必须有外部的封闭函数,该函数必须至少被调用 ...