Swift开发
文章平均质量分 53
爱码哥
专业的团队一流的服务。
展开
-
Swift:(一)、常量、变量、数据类型
//1、常量 swift中常量使用let修饰:let name = "huangjingzheng";//2、变量 swift中常量使用var修饰:var age = 22;age = 34;//OC 和 swift语言的差异:/* **(1)、没有main函数 **(2)、每行语句结束不需要使用“;”号 “;”可用可不用 **(3)、在swift语言中常量和变量自动匹配数据类型 *...原创 2018-03-02 16:43:24 · 330 阅读 · 0 评论 -
Swift_UI:(四)、导航控制器、TabbarController、页面调转
AppDelegate.swift文件中:func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { // Override point for custom...原创 2018-03-02 17:22:16 · 923 阅读 · 0 评论 -
Swift_UI:(五)、UIWebView、WKWebView
import UIKitimport WebKitclass ViewController: UIViewController,UIWebViewDelegate { var webKit: WKWebView? override func viewDidLoad() { super.viewDidLoad()// 实例化UIWebView ...原创 2018-03-02 17:23:32 · 1406 阅读 · 0 评论 -
Swift_UI:(六)、UIScrollView
import UIKitclass ViewController: UIViewController,UIScrollViewDelegate { var imageView:UIImageView? override func viewDidLoad() { super.viewDidLoad() let scrollView = UIScroll...原创 2018-03-02 17:24:28 · 298 阅读 · 0 评论 -
Swift_UI:(七)、UITableView
import UIKitclass ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource { var dataArr:Array<String>? override func viewDidLoad() { super.viewDidLoad() ...原创 2018-03-02 17:26:35 · 310 阅读 · 0 评论 -
Swift_UI:(八)、UITableView自定义Cell
创建基于NSObject的Goods类:import UIKitclass Goods: NSObject { var name:String? var price:String? var coverIamge:String? var desTitle:String?}新建基于UITableViewCell的类GoodsTableViewCell:import UIKitc...原创 2018-03-02 17:30:30 · 4772 阅读 · 0 评论 -
Swift_UI:(九)、UICollectionView
import UIKitclass ViewController: UIViewController,UICollectionViewDelegate,UICollectionViewDataSource { override func viewDidLoad() { super.viewDidLoad() let layout = UIColle...原创 2018-03-02 17:31:37 · 298 阅读 · 0 评论 -
Swift4.0 语法新特性
1.添加Codable协议,方便自定义数据类型序列化2.添加定义多行字符串语法3.改进key-value coding的keypath4.修改并强化字典功能5.字符串变为集合类型1.Swifty encoding and decoding:在Objective-C中值类型的相互影响是十分糟糕的。比如NSCoding协议,类继承它之后,我们需要在类中重写自定义的 encoding 和 decodin...转载 2018-03-02 17:38:32 · 935 阅读 · 0 评论 -
Swift:动画
import UIKitclass ViewController: UIViewController { var myView:UIView? override func viewDidLoad() { super.viewDidLoad() myView = UIView() myView?.frame = CGRect(x:100,...原创 2018-03-03 11:50:47 · 354 阅读 · 0 评论 -
Swift:CoreAnimation核心动画
import UIKitclass ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() let myView = UIView(frame: CGRect(x: 100, y: 100, width: 100, height: 100))// ...原创 2018-03-06 17:16:12 · 629 阅读 · 0 评论 -
Swift 四种实现单例的方式
单例模式单例模式是设计模式中最简单的一种,甚至有些模式大师都不称其为模式,称其为一种实现技巧,因为设计模式讲究对象之间的关系的抽象,而单例模式只有自己一个对象。当你只需要一个实例的时候需要使用单例,如UIApplication.sharedApplication() 等 ,windows的任务管理器,回收站 都是只能同时存在一个。下面看看swift中的几种实现方式:1、imp...原创 2018-08-05 08:38:32 · 2073 阅读 · 0 评论 -
Swift4.0中AFNetworking的桥接和使用
一、创建AFnetworking桥接文件: Github里面down下来AFNetworking的压缩包,解压缩然后将里面的AFNetworking和UIKit+AFNetworking这两个文件夹直接拖进去要用的那个工程里面去。 在Build Phrases下的Compile Sources添加所有导入的.m文件。我在实际操作中没做到这步,因为我把文件夹拖进去之后,貌似Xcode...原创 2018-08-05 09:21:40 · 3901 阅读 · 0 评论 -
Swift 网络数据请求与处理最常用第三方
一: Swift 网络数据请求与处理最常用第三方 又有时间出来装天才了,还是在学swift,从中又发现一些问题,这两天上网找博客看问题弄的真的心都累。博客一篇写出来,好多就直接照抄,就没有实质性的把问题解决了,只是在发表的博客数量上 + 1 !!真心没意思。。 看看在Swift中是在怎样请求数据,解析数据加载图片这些的,也使我们最基本最常见的用法了,先说说这几个三方库: ...原创 2018-08-05 11:11:42 · 3340 阅读 · 1 评论 -
Swift_UI:(三)、程序跳转、视图控制器的生命周期
ViewController.swift:import UIKitclass ViewController: UIViewController { //视图加载完成 @IBAction func nextClick(_ sender: Any) { self.present(NextViewController(),animated: true,completion: n...原创 2018-03-02 17:17:32 · 773 阅读 · 0 评论 -
Swift_UI:(二)、UIPageControl、UISegmentedControl、UISlider、UIProgressView、UIStepper、UIPickerView
import UIKitclass ViewController: UIViewController,UIPickerViewDelegate,UIPickerViewDataSource,UISearchBarDelegate { override func viewDidLoad() { super.viewDidLoad()// 1、UIPageContro...原创 2018-03-02 17:13:36 · 346 阅读 · 0 评论 -
Swift_UI:(一)、UILabel、UIButton、UIImageView、UITextFidld、UISwitch
import UIKitclass ViewController: UIViewController,UITextFieldDelegate { override func viewDidLoad() { super.viewDidLoad() //1、UILabel let label = UILabel(frame:CGRect(x:20,y:2...原创 2018-03-02 17:12:05 · 327 阅读 · 0 评论 -
Swift:(二)、元祖、可选类型、运算符、字符串和字符
//1、元组:把多个值组合成一个复合值//特点:元组中的值可以放多个类型//(1)元组的写法:let dog = (age:5,name:"阿毛",gender:"女")//(2)、元组的类型//(Int,String,String,Bool,Double)//(3)、元素分解值let (age,name,gender) = dog//(4)、简化写法:let (age1,name1,_) = d...原创 2018-03-02 16:45:49 · 395 阅读 · 0 评论 -
Swift:(三)、字符串处理
//1、字符串:var string = ""var emptyString = String()//字符串初始化//(1)、可变性:var variableSting = "hello"var newvariableSting = variableSting + " world !"let newString = "hello"let NewString = newString + " worl...原创 2018-03-02 16:47:35 · 338 阅读 · 0 评论 -
Swift:(四)、数组、集合、字典
//1、 数组:存放统一数据类型元素//(1)、创建一个带类型的空数组(Int):var array = [Int]()array = [12,5,6]//(string数组)var arrStr = [String]()arrStr = ["sdfsdf","sfsdfsdf","sdfsdf"]// (2)、错误类型//array = ["sdfd",2324,"sdfsdfdfs"] 存放统...原创 2018-03-02 16:48:47 · 1211 阅读 · 0 评论 -
Swift:(五)、字典、控制流
//1、字典:(1)、存储多个相同类型元素的容器(2)、使用键值对存储数据(3)、无序//(1)、空字典var dic1 = [Int:String]()var dic2:[String:String] = [:]//(2)、空字典赋值:dic2 = ["name":"huangjingzheng","age":"12","gender":"男"]var dic3:[Int:String]原创 2018-03-02 16:51:48 · 309 阅读 · 0 评论 -
Swift:(六)、函数
//函数://(1)、函数的定义和调用//定义:func+空格+方法名(参数名:参数类型)-> 返回值类型func sayhello(person:String) -> String{ let hicontent = "hello " + person return hicontent}//调用:下面传入的参数称为实参print(sayhello(person: "huan...原创 2018-03-02 16:52:50 · 369 阅读 · 0 评论 -
Swift:(七)、闭包
//闭包:闭包就是自包函数代码块,可以用来在代码中传递和使用。siwft中的闭包和C、OC中的代码块(block),以及其他语言的匿名函数类似//全局函数和嵌套函数也是一种特殊的闭包,闭包采取的形式有三种://(1)、全局函数是一个有名字,但不会捕获任何值的闭包//(2)、嵌套函数是一个有名字,并且可以捕获封闭函数域内值的闭包//(3)、闭包表达式是一个利用轻量级愈发所写的可以捕获上下文中变量和常...原创 2018-03-02 16:53:53 · 319 阅读 · 0 评论 -
Swift:(八)、枚举
//枚举:与OC语言中的不同//(1)、不需要给每一个枚举成员提供枚举值//(2)、如果提供枚举值,它的类型是多样的,可以是字符串,字符,整形值,浮点数//(3)、没有默认的0,1,2,3,4//1、枚举的语法:使用enum + 名称 { // 这里写枚举的定义 }enum type{// 这里写枚举的定义}//使用case来设置成员值:enum Dureation{ case ...原创 2018-03-02 16:55:20 · 302 阅读 · 0 评论 -
Swift:(九)、类和结构体
//类和结构:它们都有属性和添加方法,为结构体和类扩展//相同点://(1、定义属性都是用于存储值的//(2、定义方法用于提供功能//(3、定义下标操作用于访问实例包含的值//(4、定义构造器用于生成初始化值//(5、通过宽展增加默认的实现功能//(6、通过实现协议提供某种标准//类和结构体的不同点://(1、允许一个类继承另一个类(继承)//(2、在类型转换中允许在运行时检查和解释一个类实例的类...原创 2018-03-02 16:56:25 · 328 阅读 · 0 评论 -
Swift:(十)、下标、继承、重写、构造方法
//一、下标:一个类型可以定义多个下标,通过不同索引类型进行重载。下标不限于一维,你可以定义具有多个入参的下标满足自定义类型的需求。//(1)、下标语法:与定义实例方法类似,定义下标使用 subscript 关键字,指定一个或多个输入参数和返回类型struct TimesTable { let multiplier: Int subscript(index: Int) -> In...原创 2018-03-02 17:00:17 · 385 阅读 · 0 评论 -
Swift:(十二)、类型转换、嵌套类型、扩展
//1、Any 和 AnyObject 的类型转换//Any 可以表示任何类型,包括函数类型//AnyObject 可以表示任何类类型的实例var things = [Any]()things.append(0)things.append(0.0)things.append(42)things.append(3.14159)things.append("hello")things.append((...原创 2018-03-02 17:07:28 · 320 阅读 · 0 评论 -
Swift:(十三)、协议、委托、代理
//协议:规定了用来实现某一特定任务或者功能的方法、属性,以及其他需要的东西。类、结构体 或枚举都可以遵循协议,并为协议定义的这些要求提供具体实现。某个类型能够满足某个协议的要求,就可以说 该类型遵循这个协议//1、协议语法:协议的定义方式与类、结构体和枚举的定义非常相似protocol SomeProtocol { // 这里是协议的定义部分 }protocol AnotherPro...原创 2018-03-02 17:08:25 · 844 阅读 · 0 评论 -
Swift:(十四)、访问控制(模块和源文件、访问级别、子类)
//访问控制:访问控制可以限定其他源文件或模块中的代码对你的代码的访问级别。这个特性可以让我们隐藏代码的一些实现细节,并且可以为其他人可以访问和使用的代码提供接口//一、模块和源文件://1、模块:指的是独立的代码单元,框架或应用程序会作为一个独立的模块来构建和发布。在 Swift 中,一个模块可以使用 import 关键字导入另外一个模块//2、源文件就是 Swift 中的源代码文件,它通常属于...原创 2018-03-02 17:09:48 · 1079 阅读 · 0 评论 -
SwiftyJson 实现Json转模型
JSON是移动端开发常用的应用层数据交换协议。最常见的场景便是,客户端向服务端发起网络请求,服务端返回JSON文本,然后客户端解析这个JSON文本,再把对应数据展现到页面上。但在编程的时候,处理JSON是一件麻烦事。在不引入任何轮子的情况下,我们通常需要先把JSON转为Dictionary,然后还要记住每个数据对应的Key,用这个Key在Dictionary中取出对应的Value来使用。这个过程...转载 2018-08-05 23:47:50 · 8900 阅读 · 0 评论