swift基本语法(总结提炼版)之013 swift 之闭包返回值
2016-05-24 23:47
323 查看
1.代码
import UIKitclass ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let sc = createScrollView({ () -> Int in
return 15
}) { (index) -> UILabel in
let width = 50
let label = UILabel()
label.backgroundColor = UIColor.greenColor()
label.textColor = UIColor.darkGrayColor()
label.font = UIFont.systemFontOfSize(17)
label.text = "text\(index)"
label.frame = CGRect(x: index * width, y: 0, width: width, height: 44)
return label
}
view.addSubview(sc)
}
}
/**
这个函数有两个闭包参数: labelCount: ()->Int labelWithIndex: (index:Int)->UILabel
这个函数的返回值是一个UIScrollView
*/
func createScrollView(labelCount: ()->Int, labelWithIndex: (index:Int)->UILabel) -> UIScrollView{
// 1.创建UIScrollView
let sc = UIScrollView(frame: CGRect(x: 0, y: 100, width: 375, height: 44))
let count = labelCount()
// let width = 50
// 2.遍历创建UILabel
for i in 0..<count{
let label = labelWithIndex(index: i)
sc.addSubview(label)
sc.contentSize = CGSize(width: CGFloat(count) * label.bounds.width, height: 44)
}
// 返回UIScrollView
return sc
}
//}
2.效果:
相关文章推荐
- Swift成为主流语言的10个理由
- Swift难点-继承中的构造规则实例详解
- swift资源库--Swift泛型
- Swift-自动引用计数(Automatic Reference Counting)(十四)
- 使用Go语言开发iOS应用(Swift版)
- swift 移动支付之【微信支付】开发步骤
- swift资源库—3—字典/集合/数组
- Swift基础小结_2
- Swift基础小结_1
- swift向方法传数组参数的语法
- swift基础笔记4-类和结构体
- swift新版本相对于swift1.0版本改动大全
- swift dictionary 是否存在key
- swift基础笔记3-枚举
- Swift ABI 稳定时间将被推迟,新版本 iPhone 可能包括双镜头相机
- Swift中的协议和闭包
- Swift的自动引用计数->解决内存泄露
- [快速学会Swift第三方库] SwiftyJSON篇
- Swift_ uitableview使用自定义(xib)cell
- swift基础笔记2-闭包