Swift-'!','?'用法】的更多相关文章

之前用OC代码写过PUSH和POP的转场动画,闲来无事,将其转换成Swift语言,希望对大家有帮助,转载请注明.... 如何实现PUSH和POP的转场动画? 首先,创建一个NSObject的类,分别用来实现PUSH和POP的动画效果 创建PUSH文件,实现扇形效果,代码如下: 需要注意的是,代理的实现方法要完整 var transitionContextT:UIViewControllerContextTransitioning?        func transitionDuration(u…
// // ViewController.swift // Swift-循环语句 // // Created by luorende on 16/12/08. // Copyright © 2016年 luorende. All rights reserved. // import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any a…
数组简单用法 //------------------------------------------------------------------------------ // 1. 数组定义 // 1> 使用[]可以快速定义数组,每一个数组元素使用 , 分隔 // 2> 数组中的数据元素可以是不同类型 var array = [, 1.2] //------------------------------------------------------------------------…
(注:自iOS8起,苹果便废弃UISearchDisplayController的使用,改为使用UISearchController来实现类似功能,可参考我的另一篇文章“Swift - 使用UISearchController实现带搜索栏的表格”) UISearchDisplayController控件默认封装了Search Bar和Table View,可同时提供搜索和结果表格显示功能. 下面提供了一个使用样例,同时通过代码定制Search Bar的一些属性来实现自定义的外观和效果,并且展示用…
鉴于昨天开会部门会议讨论的时候,发现有些朋友对枚举的用法还是存在一些疑问,所以就写下这个文章,介绍下Swift下的枚举的用法. 基本的枚举类型 来,二话不说,我们先贴一个最基本的枚举: enum Movement { case letf case right case top case bottom } 这里就定义了一个简单的方向枚举,有上下左右四个方面的case.那么我们可以做些什么操作呢? 1.你可以遍历他的枚举: let aMovement = Movement.left switch a…
They said "you should learn a new language every year," so I  learned Swift. Now  I  learn a new language every two weeks! 这个笑话绝对是我看过的Swift被黑的最惨的一次!所以今天我们来学习一下Swift的泛型. Swift的泛型有点奇怪,针对Class和Function,都是通过<Type>来定义,和C#一摸一样,同样也有where关键字进行约束.…
enumerateobjectsusingblock:不是Array的方法在NSArray使用.如果你想使用它,你需要一个实例NSArray而不是Array. import Foundation var array: NSArray = ["Some", "strings", "in", "an", "array"] array.enumerateObjectsUsingBlock({ object, in…
import Foundation //swift函数的使用 func sayHello(name userName:String ,age:Int)->String{ return "用户名:\(userName) 年龄:\(age)" } func getName()->(name:String,age:Int){ return ("barry",21); } func countPerson(users:String...){ for user i…
import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { self.window = UI…
// // ViewController.swift // Swift-Array // // Created by luorende on 16/9/12. // Copyright © 2016年 luorende. All rights reserved. // import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any a…
// // ViewController.swift // Swift-String // // Created by luorende on 16/9/10. // Copyright © 2016年 luorende. All rights reserved. // import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any…
本文转载自:代码手工艺人的博客,原文名称:Swift之 ? 和 ! Swift语言使用var定义变量,但和别的语言不同,Swift里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化.如果在使用变量之前不进行初始化就会报错: var stringValue : String //error: variable 'stringValue' used before being initialized //let hashValue = stringValue.ha…
一个类可以继承另一个类的方法,属性和其它特性.当一个类继承其它类,继承类叫子类,被继承类叫超类(或父类).在Swift中,继承是区分「类」与其它类型的一个基本特征. 在Swift中,类可以调用和访问超类的方法,属性和下标,并且可以重写(override)这些方法,属性和下标来优化或修改它们的行为.Swift会检查你的重写定义在超类中是否有匹配的定义,以此确保你的重写行为是正确的. 可 以为类中继承来的属性添加属性观察器(property observer),这样一来,当属性值改变时,类就会被通知…
// Playground - noun: a place where people can play import UIKit //------------------------------------------------------------------------------ // 1. for // 传统的for循环方式在swift中同样支持 var num = 0 for(var i = 0; i < 10 ; i++) { num += i } num //---------…
Swift中,除了条形进度条外,还有环形进度条,效果图如下: 1,环形进度条的基本属性 (1)Style: Large White:比较大的白色环形进度条 White:白色环形进度条 Gray:灰色环形进度条  (2)Color: 设置环形进度条的颜色 (3)Behavior: Animating:勾选后环形进度条开始转动 Hides When Stopped:勾选后当环形进度条停止转动时自动隐藏 2,使用样例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17…
自iOS8起,苹果就建议告警框使用UIAlertController来代替UIAlertView.下面总结了一些常见的用法: 1,简单的应用(同时按钮响应Handler使用闭包函数)    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 import UIKit   class ViewController: UIViewController ,UIActionSheetDelegate {  …
故事板(UIStoryboard)可以很方便的进行界面的设计,下面总结了常用的几个操作方法: 1,初始场景 选中View Controller,在属性面板里勾选Is Initial View Controller复选框,即可设置为起始场景(前面会显示灰色的小箭头)   2,将View Controller的尺寸改成iPhone大小 (1)点击左侧的Main.storyboard.然后选择右侧的 show the File inspector(纸张图标),最后将Use Size Classes前面…
App底部的tab标签页可以方便的把功能模块划分清楚,只需点击相应的标签页就可以展示完全独立的视图页面,同时各标签页间的视图也可以进行数据交换.   TabBarItem系统自带图标样式(System)介绍: Custom:自定义方式,配合Selected Image来自定义图标 More:三个点的图标,表示更多意思 Favorites:星形图标 Featured:星形图标 Top Tated:星形图标 Recents:时钟图标 Contacts:一个圆形一个人头像的图标,代表联系方式 Hist…
使用页控件可以用来展示多个桌面.比如很多应用第一次登陆时,会在开始页面使用页控件来介绍功能,通过左右滑动来切换页. 通常我们使用UIPageControl和UIScrollView相互结合来实现多页切换,滑动页面时页控件标签(即页面下方的小白点)会更新到对应的页面.而直接点击页标签时,滚动条也会滚到相应的页. (UIPageControl的当前页小圆点和非当前小圆点的颜色是可以设置的,同时如果只有一页的时候也可以选择是否显示圆点) 效果图如下:      代码如下: 1 2 3 4 5 6 7…
1,搜索条Options属性还可设置如下功能样式: Shows Search Results Button:勾选后,搜索框右边显示一个圆形向下的按钮,单击会发送特殊事件. Shows Bookmarks Button:勾选后,搜索框右边会显示一个书本的按钮,单击会发送特殊事件. Shows Cancel Button:勾选后,搜索框右边会出现一个“Cancel”按钮,单击会发送特殊事件. Shows Scope Bar:勾选后,会在搜索条下面出现一个分段控制器. 2,下面是一个搜索条的使用样例,…
1,使用storyboard创建日期选择控件 首先我们将一个UIDatePicker控件和一个按钮直接添加到Main.Storyboard上.该按钮是为了点击时弹出提示框显示当前选择的日期和时间. 同时在ViewController.swift中使用IBOutlet建立起控件和事件的关联,具体代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 class ViewContro…
单例我们项目中是很常用的,今天刚学了在swift中怎么写单例和调用单例.下面我们简单的介绍一下.我们先看看Swift单例的写法: import UIKit class Shareinstance: NSObject { var zhangxu:NSString = "" static let sharedSoundTools = Shareinstance() class func zxsharedSoundTools() ->Shareinstance { return sha…
用了几分钟做的简单翻译 一个例子 直接贴代码,不过多解释 //这是我们的model class imageFile { var fileName = String() var fileID = Int() } //使用 var images : [imageFile] = [] images.sort({ $0.fileID > $1.fileID }) 下面是闭包的进阶使用 // 一般的代码形式 images.sort({ (image1: imageFile, image2: imageFi…
昨晚苹果发布了新一代编程语言Swift,官方提供了一个iBook的说明文档,有需要的可以看下.地址:https://itunes.apple.com/cn/book/swift-programming-language/id881256329?mt=11下面我先说下基本的一些东西,大家都是刚看,所以我也难免会出现理解错误的地方.欢迎指出.当然你也可以直接看官方的文档.一.let,var基本类型let:常量,不能二次赋值.赋值时可以不需要指定类型,编译器根据赋值自动判断.也可以手工指明类型.var…
Swift 也提供恒等(===)和不恒等(!==)这两个比较符来判断两个对象是否引用同一个对象实例. 判断字符串相等: let name = "world" if name == "world" { print("hello, world") } else { print("I'm sorry \(name), but I don't recognize you") } // 输出 "hello, world&quo…
之前对这两个概念有点糊,今天正好遇到一个相关需求,才深入了解了下. 需求如下: 大概就是对一个数组的model,重构成一个新model,返回得到一个新数组 用map很容易实现,不过后来我需要对其中进行一些过滤处理,这样,用map就不行了,幸好,flatMap可以满足我的需要. 其中原因归纳如下: map是对原对象所有元素进行一对一转换处理,中间不会跳过或遗漏,包括nil元素 flatMap更灵活,可变换维度,也能够自动解包,所以当我们对不符合元素,返回nil,最终的结果是过滤掉nil的,从而能够…
这不是教程. 当你碰到函数参数需要传递一个闭包(closure)时,一般是可以直接这么传递的(假定无返回): // 教程一般教你在参数位置传递closure: someMethod(arg1, arg2, arg3: { args -> Void in //codes here }) // swift同时有一种“同步”的写法: someMethod(arg1, arg2){ args -> Void in //codes here }…
这两个用法比较简单: 具体代码如下: 一.UISegmentedControl 1.UISegmentedControl的声明 var segment = UISegmentedControl() 2.UISegmentedControl的创建 func initSegment() { segment = UISegmentedControl(items:["one", "two", "three", "four"]) seg…
ios 8 以后苹果官方建议使用UIAlertController这个类,所以专门去网上找资料,了解了下用法, 1.创建一个alertController let alertController = UIAlertController(title: "系统提示", message: "您确定要离开吗?", preferredStyle: .alert) let cancelAction = UIAlertAction(title: "取消", s…
1,创建一个alertview,并带有“确定”和“取消”两个按钮 (注:在这里使用alertview,会报警告,那是因为从ios 8 以后,建议使用UIAlertviewController) //警告框的用法 let alertView = UIAlertView() alertView.title = "系统提示" alertView.message = "您确定要离开吗" alertView.addButton(withTitle: "取消"…