Swift基本知识点

15. June 2016 Swift 0
带有默认参数值得形参,Swift会自动给它生成一个跟形参名相同的外部参数名,调用时候需要加上参数名。在参数名称添加_,调用时候可以忽略. 在没有第三方变量的情况下,可以使用第一种方法 异或运算符来计算,第二种方法 把两个数的和赋值给其中一个人,然后再减去。 swift语言是一门大小写敏感的语言, 浮点型数据被swift默认推断为double swift布尔值只有true和false,true为真,false为假 通过访问description属性输出字符值 swift语言使用值传递作为默认字符串的拷贝方式 可选类型的变量在有值的时候返回值,没有值的时候不会返回任何东西,包括false nil不能用于非可选的变量或者常量 元组通过“.”加下标和键名来访问 类型别名这种机制在某些应用场景非常有效,比如在防止代码泄漏的时候(彻悟) a===b判断两个对象是否引用同一个类实例 溢出加法“&+”,溢出减法“&-”,溢出乘法“&*”;出发运算符“/”和求余出现溢出时,系统自动进行自动截断。 hash符号“#”作为参数名称的前缀,使用名称相同的本地参数名和外部参数名。 Currying在计算机称为柯里化, func sum(a:Int)(b:Int)->Int{      return a+b } var sumA = sum(2); var sumB = sumA(b: 3); print(sumB) var sumBc = sumA(b: 6) print(sumBc)  Swift严格要求变量在使用之前必须进行初始化 数组和元组的定义 var  arr = [String]() var arrs = Array<String>() ding dic = Dictionary<Int,Int>() var ...

键盘呼出和隐藏,和 eixt下的close

05. April 2016 Swift 0
override func touchesEnded(touches: Set<UITouch>, withEvent event: UIEvent?) { input.resignFirstResponder() //键盘失去和获得焦点 } @IBAction func close(segue:UIStoryboardSegue){ } //绑定storyboard中exit事件,点击退出,需在前一个viewcontroler和当前viewcontroler都叫上。

Xcode中使用Picker View和Segue, Size to fit content

05. April 2016 Swift 0
调整控件中的内容,会使内容和控件显示出现问题,快速适配 Editor->Size to fit content 可以快速使控件适配内容,亦或快捷键 command +=,当然,前提选择控件。 使用Picker View 需要实现三个方法,继承UIPickerViewDataSource,UIPickerViewDelegate func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int{ return 1;// 列数 } func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int{ return lijians.count;  //行数 } func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? { return lijians[row]; }并且设置代理和数据源   override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { ...

Swift UITextView and segmented 代码生成操作

15. March 2016 Swift 0
var using:UISwitch! override func viewDidLoad() { super.viewDidLoad() using = UISwitch() let textview = UITextView(frame: CGRectMake(10, 100, 200, 100))//多行文本控件 textview.layer.borderWidth = 1 textview.layer.borderColor = UIColor.grayColor().CGColor //设置颜色 textview.editable = false //不可编辑 //开关控件的大小是确定的, using.center = CGPointMake(100, 50) using.on = true using.addTarget(self, action: Selector(“swithdid”), forControlEvents: UIControlEvents.ValueChanged) self.view.addSubview(using) let items = [“1″,”2″,”3”] var segmented = UISegmentedControl(items: items) segmented.center = self.view.center ...

Swift textfield代码生成

15. March 2016 Swift 0
var textField = UITextField(frame: CGRectMake(10, 160, 200, 30))         textField.borderStyle = UITextBorderStyle.RoundedRect //圆角矩形边框         textField.borderStyle = UITextBorderStyle.None //无边框         textField.borderStyle = UITextBorderStyle.Line //直角边框         textField.borderStyle = UITextBorderStyle.Bezel //边线加阴影         textField.placeholder = \"请输入用户名\"         textField.text = \"lijian\"   ...

Swift 代码生成label和button

15. March 2016 Swift 1
self.btn.setTitle(“lijian”, forState: UIControlState.Normal)//设置按钮 let width = UIScreen.mainScreen().bounds.width; let height = UIScreen.mainScreen().bounds.height; //获取屏幕尺度 var  label = UILabel(frame: CGRectMake(10, 20, 300, 100)) label.text = “this is a wondowful book”; label.textColor=UIColor.redColor(); label.textAlignment = NSTextAlignment.Right//文字右对齐 label.shadowColor = UIColor.grayColor()//设置阴影颜色 label.shadowOffset = CGSizeMake(-5, 5)//设置阴影偏移(左和下) label.font = UIFont(name: “楷体”, size: 20)//设置字体和大小 label.lineBreakMode = NSLineBreakMode.ByTruncatingHead //隐藏头部并显示省略号 label.lineBreakMode = NSLineBreakMode.ByTruncatingTail //隐藏尾部并显示省略号 label.lineBreakMode = NSLineBreakMode.ByTruncatingMiddle ...

IOS自动生成模板函数的方法中文名

15. March 2016 Swift 0
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {   return true     }//app启动后的回调函数  func applicationWillResignActive(application: UIApplication) {    }//应用挂起(锁屏)的回调函数  func applicationDidEnterBackground(application: UIApplication) {           }//app进入后台时候才调用的函数   func applicationWillEnterForeground(application: UIApplication) {        }//app回到前台时候才会被调用    func applicationDidBecomeActive(application: UIApplication) {         }//从休眠变成活跃状态时候调用   func applicationWillTerminate(application: UIApplication) ...

Cocoapods的安装与基本使用

27. January 2016 Swift 0
iOS 最新版 CocoaPods 的安装流程 1.移除现有Ruby默认源 $gem sources –remove https://rubygems.org/ 2.使用新的源 $gem sources -a https://ruby.taobao.org/ 3.验证新源是否替换成功 $gem sources -l 4.安装CocoaPods $sudo gem install cocoapods 备注:苹果系统升级 OS X EL Capitan 后改为 $sudo gem install -n /usr/local/bin cocoapods 5. 新建工程,并在终端用cd指令到项目文件夹中,然后记得关闭工程 6.新建文件 vim “Podfile”, $ vim Podfile platform :ios, \'8.0\' use_frameworks! target \'MyApp\' do pod \'AFNetworking\', \'~> 2.6\' pod ...

单例,类只能通过单例访问,不能自己构造

26. January 2016 Swift 0
import Foundation class Test { var s:Int private static let test = Test(s: 10) static var shareInstance:Test{ return test } private init(s:Int){ self.s = s } } var ss = Test.shareInstance print(ss.s) // private 属性作用域是Swift整个文件

map,flatMap,filter的基本使用

26. January 2016 Swift 0
[“key”:”value”].upperDescription var result = [1,2,3,4,5].flatMap{$0 * 2;} // flatMap与map类似,但是会过滤掉返回值里面的nil值 result var result1 = [1,2,3,4,5].map{$0 * 2} //map 得到一个由必包里面的返回值组成的新序列 result1 var ss = [1,2,3,4,5].filter{ $0 > 2} //Filter得到一个由必包返回值为true的值组成的新序列 ss