
Swift
文章平均质量分 70
-FIGHTING-
这个作者很懒,什么都没留下…
展开
-
fun 关键字
Swift 使用func关键字声明函数: func greet (name: String, day: String) -> String { return "Hello \(name), today is \(day)."}greet ("Bob", "Tuesday") 通过元组(Tuple)返回多个值: func getGasPrices原创 2016-03-18 10:56:48 · 1523 阅读 · 0 评论 -
Objecetive-C PK Swift
Objective-C 和 Swift很相似 因为采用了Objective-C的命名参数和动态对象模型。无缝衔接Cocoa框架,并且可以和Objective-C混搭操作。Swift支持playground 允许程序员边写代码边立即查看结果,减除了很多前置的编译运行等繁琐的工作 使用Swift来开发iOS和OSX应用是一条非常出色的道路,并且还会不断有新的功能加入到其中原创 2015-12-02 06:21:35 · 447 阅读 · 0 评论 -
Swift - 重要知识点总结
Swift 以后是苹果开发语言的趋势,趁早掌握Swift开发势在必行。下面总结一些 Swift中常见的一些知识点供大家学习。alias 别名 Swift 使用typealias关键词来定义类型的别名,从而改变已有类型的名称 Array 数组 集合类型的一种,用来有序存储同样类型的值 Assertion 断点 Swift使用断点来进行代码调试,找出无效条件原创 2015-12-02 06:18:12 · 699 阅读 · 0 评论 -
Swift 设置navigationbar属性相关
//设置导航栏颜色 let mainColor = UIColor(red: 0.92, green: 0.25, blue: 0.24, alpha: 1) self.navigationController?.navigationBar.barTintColor = mainColor self.navigationController?.nav原创 2015-12-15 16:45:00 · 660 阅读 · 0 评论 -
Swift - 告警提示框(UIAlertController)的用法
自iOS8起,苹果就建议告警框使用UIAlertController来代替UIAlertView。下面总结了一些常见的用法:1,简单的应用(同时按钮响应Handler使用闭包函数) 123456789101112131415原创 2015-12-15 15:53:26 · 887 阅读 · 0 评论 -
swift-tableView 代理方法实现点击按钮删除效果
import UIKitprotocol FirstTableViewCellDelegate: NSObjectProtocol { func deleteCell(cell: FirstTableViewCell, button: UIButton)}class FirstTableViewCell: UITableViewCell { @IBOutlet原创 2015-12-15 10:23:42 · 1005 阅读 · 0 评论 -
swift-tableView 删除行
import UIKitclass FirstViewController: UIViewController { @IBOutlet weak var tableView: UITableView! let cellIdentified = "cell" var numbers = ["One","Two","Three","Foure","Five","原创 2015-12-15 09:28:12 · 1135 阅读 · 0 评论 -
Swift学习: 从Objective-C到Swift
这篇文章是自己学习Swift的笔记与深化。希望这篇文章能够帮助已经有Objective-C经验的开发者更快地学习Swift。同时也品味到Swift的精妙之处。结论放在开头:我认为Swift比Objective-C更优雅,更安全同时也更现代,更性感。文章组织脉络:从Objective-C到Swift的语法差异。我们熟悉的Objective-C特性在Swift中如何转载 2015-12-15 13:32:02 · 489 阅读 · 0 评论 -
swift- 去除tableView 多余行
import UIKitclass FourthViewController: UIViewController { @IBOutlet weak var tableView: UITableView! let cellName = "cell" let myTableViewCellIdentified = "MyTableViewCell" ov原创 2015-12-14 15:19:20 · 3132 阅读 · 0 评论 -
swift-商品加入购物车动画
// MARK: - 商品图片抛入购物车的动画效果 extension QHGoodListViewController { /** 开始动画 - parameter rect: 商品图标对象的frame - parameter iconView: 商品图标对象 */ private func startAnimation(rect:原创 2015-12-14 14:06:06 · 1438 阅读 · 0 评论 -
Swift-控制流
控制流 使用if 和 switch来作为条件控制,使用for-in for while do-while 来构成循环。包装条件或者循环条件变量的圆括号可以省略,但是主体外的花括号是必须的同时可以使用if let 来防止值得丢失。这些值是可选的,可选通过包含另一个值或者包含nil 来指明该值不存在。通过在类型后面添加问号(?)来标记一个值可选。var option原创 2015-12-02 06:24:12 · 415 阅读 · 0 评论 -
Swift 设置按钮圆角 代码&Xib
通过stroyboard的运行时属性runtime attribute可以对Button设置圆角或者边框。1.很多人都知道通常设置一个Button或者其他UIIView子类的圆角使用 self.button.layer.cornerRadius = 10 这会用到layer的图层属性来实现的,UIView本身只是用来监听时间,而真正的现实内容的是layer图层,这当然也包含动画的实现原创 2015-12-21 18:12:17 · 4312 阅读 · 0 评论 -
Swift 踩坑
Swift 的学习势在必行 苹果官方文档上也提到过,Swift语言将会取代Objective-C 我们要加快学习Swift的步伐 在学习Swift 过程中会遇到很多坑 但是也会从中学到不少知识 我们要有一种踩坑的精神 下面给大家讲一个 import UIKitclass ViewController: UIViewController { overri原创 2015-12-04 09:12:25 · 413 阅读 · 0 评论 -
灵活的 switch
灵活的 switch Swift 中的switch支持各种各样的比较操作: let vegetable = "red pepper" switch vegetable {case "celery": let vegetableComment = "Add some raisins and make ants on a log." case "cucumb原创 2016-03-18 10:41:31 · 333 阅读 · 0 评论 -
Swift-非逃逸闭包
非逃逸闭包//当一个闭包作为参数传到一个函数中,但是这个闭包在函数返回之后被执行,我们称该闭包从函数中逃逸。当你定义接受闭包作为参数的函数时,可以在参数名之前标注@noescape,用来指明这个闭包是不允许“逃逸”出这个函数的。//将闭包标注@noescape能使编译器知道这个闭包的生命周期//注:闭包只能在函数体中被执行,不能脱离函数体执行func someFunctionWithNoe原创 2016-01-31 23:54:49 · 1245 阅读 · 0 评论 -
Swift-闭包是引用类型
闭包是引用类型//下面是一个使用makeIncrementor的例子let incrementByTen = makeIncrementor(forIncrement: 10)incrementByTen()incrementByTen()incrementByTen()//如果创建了另一个incrementor,它会有属于他自己的一个全新、独特的runningTotal变量的引用:let i原创 2016-01-31 23:53:47 · 1051 阅读 · 0 评论 -
Swift-捕获值
三.捕获值//闭包可以在其被定义的上下文中捕获常量或变量。即使定义这些常量和变量的原作用域已经不存在了,闭包仍然可以在闭包函数体内引用和修改这些值。//Swift中,可以捕获值的闭包的最简单形式是嵌套函数,也就是定义在其他函数的函数体内的函数。嵌套函数可以捕获其外部函数所有的参数以及定义的常量和变量 //例子func makeIncrementor(forIncrement amoun原创 2016-01-31 23:52:23 · 862 阅读 · 0 评论 -
Swift-尾随闭包
//尾随闭包:尾随闭包是一个书写着函数括号之后的闭包表达式,//如果您需要将一个很长的闭包表达式作为最后一个参数传递给函数,可以使用尾随闭包来增强函数的可读性。func someFunctionThatTakesAClosure(closure: () -> Void ) { //函数体部分}//以下是不使用尾随闭包进行函数调用someFunctionThatTakesA原创 2016-01-28 00:25:50 · 721 阅读 · 0 评论 -
Swift - 给图片(imageView)添加阴影边框
有时为了突出图片,需要给图片添加阴影效果。通过UIImageView的layer阴影属性设置,可以很方便的实现这个功能。不仅是UIImageView,其他的UI控件也是可以设置阴影的。import UIKit class ViewController: UIViewController { @IBOutlet weak var imageView1: UIImageView!原创 2015-12-26 14:52:12 · 3471 阅读 · 0 评论 -
Swift - 加载XIB 文件
Swift 语言是大趋势 快速开发也是苹果公司推崇的一种开发方式 XIB 和 StoryBoard 是快速开发的一种方式 我们可以结合 这几种方式快速开发我们的项目 但是 StoryBoard 团队开发不建议使用 因为会出现很多问题及冲突 解决起来很麻烦 下面介绍一下 Swift 是如何加载XIB 文件的 我们了解OC 加载XIB 文件需要NIB 注册 在Swif原创 2015-12-09 17:53:08 · 2760 阅读 · 0 评论 -
Swift 闭包排序算法
闭包表达式是一种利用简洁的语法构建内敛的闭包的方式。闭包表达式提供了一些语法优化,使得撰写闭包变得简单明了。sort(_:)方法定义和语法优化的方式。每一次迭代都使用简洁的方式描述了相同的功能。Swift标准库提供了名为sort的方法,会根据您提供的用于排序的闭包函数将已知类型数组中的值进行排序。一旦排序完成,sort(_:)方法会返回一个与原数组大小相同,包含同类型元素已正确排序的新数组。原原创 2016-01-27 13:19:28 · 931 阅读 · 0 评论 -
Swift- lazy 懒加载
我们在使用OC 的时候会写一些懒加载 用的的时候才创建 提高了系统的性能 Swift 给我们提供了一个属性 lazy 专门的延迟加载属性 方便了我们的编程 也提高了系统的性能 我们在写UI控件要多使用懒加载方式 import UIKitimport Foundationlet cellName: String = "myCell"class ViewController: UIVie原创 2015-12-09 14:15:31 · 2658 阅读 · 0 评论 -
Swift中的willSet与didSet
import Foundationclass People : NSObject{ //普通属性 var firstName:String = "" var lastName:String = "" var nickName:String = "" //计算属性 var fullName:String {原创 2015-12-11 09:06:31 · 331 阅读 · 0 评论 -
Swift - 修改导航栏“返回”按钮文字,图标
项目中常常会使用 UINavigationController 对各个页面进行导航,导航栏左侧的返回按钮默认标题文字是上级页面的title。但如果上级页面的标题很长,那么这个返回按钮字很多就会很丑: 当文字极其长时返回文字就会变成“back”: 一,要修改“返回按钮”的文字,有如下两种方式:1,在父页面中设置将nav转载 2015-12-11 15:22:29 · 4972 阅读 · 0 评论 -
Swift-封装购物车Model 数据模型
import UIKitclass QHGoodModel: NSObject { //是否已经加入购物车 var alreadyAddShoppingCart: Bool = false //商品图片名称 var iconName: String? //商品标题 var title: String? //商品描述原创 2015-12-10 16:30:06 · 2729 阅读 · 0 评论 -
swift-学习之路,字典、数组、循环-控制流
swift-学习之路,字典、数组、循环-控制流原创 2015-08-17 10:26:39 · 1153 阅读 · 0 评论 -
swift -基本数据类型的定义与使用
//// main.swift// swift-02//import Foundation//Foundation 基础库包//没有main函数//这个函数的作用就是打印信息//这里可以不用加;//lua语言 //println("Hello, World!")//变量定义 定义了一个变量 //int a;变量定义以var开头,var开头就是声明一个变量,变量名需要原创 2015-08-13 10:32:00 · 1178 阅读 · 0 评论 -
swift-tabbar的使用,页面之间的跳转
//// AppDelegate.swift// TabbarControllerimport UIKit@UIApplicationMainclass AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? func application(application:原创 2015-08-15 08:18:25 · 3737 阅读 · 0 评论 -
swift入门-实现简单的登录界面
//// AppDelegate.swift// UIWindowimport UIKit@UIApplicationMainclass AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? func application(application: UIApplic原创 2015-08-16 14:06:44 · 10132 阅读 · 2 评论 -
swift -NavigationController,代理传值
//// ViewController.swift// NavigationController//import UIKitimport Foundationclass ViewController: UIViewController,FontSizeChangDelegate { var myLabel :UILabel?;//声明一个UILabel对象 全局的原创 2015-08-14 08:12:00 · 1667 阅读 · 2 评论 -
swift -函数、函数指针
//// main.swift// FunctionTest-04//import Foundationprintln("函数测试!")testFunction()//// FunctionTest.swift// FunctionTest-04//import Foundation//函数以func开头 表示是一个函数//参数和参数以,//v1 表示原创 2015-08-14 08:02:56 · 1458 阅读 · 0 评论 -
swift -类的定义及使用
//// main.swift// ClassDemo-06//import Foundationprintln("Hello, World!")//类的定义 Person 名字class Person{ //定义一个字段 年龄 var age :Int = 0; //定义一个字段 名字 //?表示name 为空 nil 或者没有设置 na原创 2015-08-14 08:06:55 · 3231 阅读 · 0 评论 -
swift -结构体
//// main.swift// Struct-Demo-05//import Foundationprintln("结构体测试!")//结构体和C语言的结构体不同//swift结构体可以带函数/C++struct QHTest { var x = 0;//定义一个结构体 x y var y = 0;//0是初值 //定义结构体的构造函数原创 2015-08-14 08:04:58 · 733 阅读 · 0 评论 -
swift -变量的定义与使用
使⽤用let来声明常量,使⽤用var来声明变量。⼀一个常量的值在编译时并不需要获取,但是你只能为它赋值⼀一次。也就是说你可以⽤用常量来表⽰示这样⼀一个值:你只需要决定⼀一次,但是需要使⽤用很多次。 NSLog("--------------") var myVariable = 42 myVariable = 50 let myCo原创 2015-08-13 09:51:10 · 2028 阅读 · 0 评论 -
swift- tableView 的使用
//// ViewController.swift// TableView-11import UIKitimport Foundationclass ViewController: UIViewController,UITableViewDataSource,UITableViewDelegate { //数据源NSMutableArray var dataA原创 2015-08-15 08:20:51 · 743 阅读 · 0 评论 -
swift -UIView的使用
//// ViewController.swift// SwiftUI程序-07import UIKitclass ViewController: UIViewController { var clickCount:Int = 0;//clickCount 并没有声明为int var myLabel:UILabel? //申明一个全局变量?表示初始值为空原创 2015-08-14 08:08:51 · 1377 阅读 · 0 评论 -
Swift 语言的相关数据
相关数据使用Swift 语言进行开发的条件是什么?Xcode版本>= 6.0Mac 系统版本 >= 10.9.3Swift 自从发布之后 备受开发者的关注一位国外的开发者用Swift 实现了Flappy Bird 上手学习时间4个小时 编程加上休息 总共9个小时! 可见Swift 语言的优越性相关任务 :我们了解一门新的语言要了解他的背景 Swift 首原创 2015-10-02 11:27:58 · 382 阅读 · 0 评论 -
Swift中延迟属性@lazy
延迟存储属性是指当第一次被调用的时候才会计算其初始值的属性。在属性声明前使用@lazy来标示一个延迟存储属性。注意:必须将延迟存储属性声明成变量(使用var关键字),因为属性的值在实例构造完成之前可能无法得到。而常量属性在构造过程完成之前必须要有初始值,因此无法声明成延迟属性。延迟属性很有用,当属性的值依赖于在实例的构造过程结束前无法知道具体值的外部因素时,或者当属性的原创 2015-12-10 10:40:31 · 660 阅读 · 0 评论 -
Swift - 元组的用法
元组类型 元组像是数组和结构体的杂交什么是元组类型元组类型由N个任意类型的数据组成(N>0)组成元组类型的数据可以成为“元素”let position = (x:10.5,y:20)//position 有2个元素 x,y为元素的名称 let person = (name:"jack")//person 只有name 一个元素let data = ()//空元组元素的原创 2015-10-02 22:28:06 · 491 阅读 · 0 评论 -
Swift 运算符
运算符 这里介绍Swift中一些运算符 和OC 里面相同的这里就不再介绍了 新增加的的有范围运算符 ..< 、...溢出运算符&+ &- &* &% &/虽然基本的运算符大致相同 但是有些细节还是需要注意的赋值运算符 1对1 赋值运算符 var a = 5 let b = 20 N对N 赋值 let(x,y) = (1,2) // 这里是元组 后面会讲到跟C/OC原创 2015-10-02 21:58:30 · 470 阅读 · 0 评论