ImageView圆角
1 | var layer = cell.leftImageView.layer; |
我常用的全局设置
1 | let appear = UINavigationBar.appearance(); |
注意优先级顺序
控制器中代码设置
> storybord设置
> 全局设置
优先级高的会覆盖优先级低的配置,比如storybord中的设置了navigationbar的样式 那么全局设置就不生效
设置状态栏
iOS9以下
Info.plist
添加两个配置项View controller-based status bar appearance
设置为 NO
Status bar style
设置为 UIStatusBarStyleLightContent
1 | //文字白色 |
1 | //文字黑色 |
iOS7-9
ios升到9以后上面的设置会报一下错误CGContextRestoreGState: invalid context 0x0. If you want to see the backtrace
Info.plist
添加两个配置项View controller-based status bar appearance
设置为 YES
1 | //navigationController管理的页面 |
1 | //无navigationController的页面 |
NavigationController
属性设置
1 | //设置是否透明 |
全局设置
1 | var appear = UINavigationBar.appearance(); |
TabBarController
属性设置
1 | //是否隐藏 |
TableView
1 | //设置偏移 |
TableViewCell
1 | //设置cell右面的图标 |
Segue传值
1 | override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { |
边缘手势
1 | //禁止边缘手势 |
关闭页面
1 | //关闭push的页面 |
1 | //关闭model的页面 |
计算tableCell的高度
定义全局变量
1 | //用于缓存计算高度的cell |
保存计算高度的Cell实例
1 | let cell = NSBundle.mainBundle().loadNibNamed("PingjiaTableViewCell", owner: nil, options: nil)[0] as! PingjiaTableViewCell; |
计算高度
1 | func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat { |
TTS
1 | let player = AVSpeechSynthesizer(); |
获取AppDelegate实例
1 | let appDelegate=UIApplication.sharedApplication().delegate as! AppDelegate; |
NSUserDefaults读写
写
1 | let defaults = NSUserDefaults.standardUserDefaults(); |
读
1 | let defaults = NSUserDefaults.standardUserDefaults(); |
清空
1 | let defaults = NSUserDefaults.standardUserDefaults(); |
点击空白隐藏输入法
1 | override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { |
View添加点击事件
1 | var tapRecognizer1:UITapGestureRecognizer!; |
保留两位小数
1 | String(format: "%.2f", 3.1415926); |
搜索背景黑块
搜索的时候navigationController
会逐渐缩小背景的黑色就会显示出来,解决方法就是修改navigationController
的view
的背景色
1 | self.navigationController?.navigationBar.translucent = false; |