自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 HeathKit框架学习

HeathKit框架学习本文结构简介用户数据安全及隐私HeathKit框架HeathKit使用总结简介HeathKit是Apple公司在推出iOS 8 系统时一块推出的关于健康信息的框架。如果iPhone手机系统升级到iOS8之后就会发现多了一个健康-app,这就是Apple提供的一个记录用户健康信息的app,可以用它来分享健康和健身数据。还可以指定数据的来源,比如我们自己创建一个app

2016-02-23 17:02:41 2740 2

原创 method_swizzling

Method Swizzling最近在研究学习runtime,其中有一个特性叫method swizzling,即方法替换。它能够让你在合适的地方更改一下方法的实现。它功能很强大,如果用好了能够带你飞,但是用不好那就是坑啊。下面就开始讲解。Swizzling 原理在Objective-C中调用一个方法,其实就是向一个对象发消息,查找消息的依据就是selector的名字。我们可以利用runtime的机

2016-01-28 16:42:59 515

原创 runtime详解

runtime 详解本文结构:###### 简介###### runtime版本和平台###### 与runtime交互##### runtime术语##### 消息##### 动态方法解析##### 消息转发##### 健壮的实例变量##### 总结1、简介Cocoa的Objective-C语言可以在编译和链接的时候不知道类或者成员变量,只有在runtime(运行时)的时候才知

2016-01-27 14:11:41 737

原创 Swift学习之泛型

Swift学习之泛型泛型能够让开发者编写自定义需求已经任意类型的灵活可用的的函数和类型。能够让我们避免重复的代码。用一种清晰和抽象的方式来表达代码的意图。1.泛型解决的问题下面是一个非泛型的例子func swapTwoIntValue(inout a:Int,inout b:Int){ //使用inout关键字可以修改传入的数值的原始值。 let tempValue = a

2016-01-22 12:48:24 698

原创 Swift学习之协议

协议协议定义了用来实现某一特定任务或者功能的属性、方法以及需要的东西。类、结构体、枚举都可以采用协议,但是都必须实现协议所必须的要求。除了采纳协议规定的要求,还可以给协议扩展一下方法、属性,这样采纳该协议的类型就能够使用这些功能。1.语法protocol SomeProtocol1{ //定义一下使用该协议要实现的内容}要让自定义的类型采用协议,需要在需要的类型名后加上协议名,并用 “:

2016-01-21 17:23:02 493

原创 Swift学习之扩展

扩展向已有的类、结构体、枚举或者协议里添加新功能。包括 在没有能力获取源代码的权限下扩展类型的能力。 扩展可以: 添加计算型属性和计算型类型属性 定义实例方法和类型方法 提供新的构造器 定义下标 定义和使用新的嵌套类型 使一个已有类型符合某个协议 扩展的语法: extension Sometype{ } 1.计算型属性extension Double{ var km:Doub

2016-01-19 16:33:02 533

原创 Swift学习之可选链式调用

可选链式一种在当前值可能为nil的可选值上调用属性、方法、下标的方法,如果可选值有值,则调用成功,否则就返回nil。多个调用可以连接在一起形成一条链,如果整条链的某个节点为nil,则调用不成功,返回nil。class Person { var residence:Residence?}class Residence { var rooms = [Room]() var n

2016-01-19 16:32:36 660

原创 Swift学习之自动引用计数

引用计数class Person { let name: String init(name: String) { self.name = name print("Person:\(name) is being initialized") } deinit { print("\(name) is being deinitia

2016-01-19 16:31:15 516

原创 Swift学习之析构

析构class Bank { static var coinsInBank = 10_000 static func vendCoins(var numberOfCoinsToVend:Int)->Int{ numberOfCoinsToVend = min(coinsInBank,numberOfCoinsToVend) coinsInBank -=

2016-01-19 16:30:45 373

原创 Swift学习之构造过程

构造过程类和结构体的存储属性必须在实例创建时,设定合适的初始值,可以提供默认值,也可以在构造器中提供初始值1.构造参数如果构造器的参数使用了外部参数名,必须使用,也可以用 _ 代替,不适用外部参数名struct Celsius { var temperatureInCelsius:Double //这里也可以提供初始值,也可以不提供,因为下面的构造器中在实力创建时会提供初始值 init

2016-01-19 16:30:15 555

原创 Swift学习之继承

继承 // 创建一个基础类class Vehicle { var currentSpeed = 0.0 var description :String { return "Traveling at \(currentSpeed) miles per hour" } func makeNoise(){ print("eeee") //e

2016-01-19 16:29:34 513

原创 Swift学习之下标

下标struct TimesTable { let mutiplier :Int subscript(index:Int)->Int{ return mutiplier * index }}var timesTable = TimesTable(mutiplier: 3)timesTable[2] //2*3 = 6struct Matrix {

2016-01-19 16:29:09 386

原创 Swift学习之方法

Method :方法1.实例方法class Counter { var count = 0 func increment(){ ++count } func add(value:Int){ count += value } func reSet()->Int{ count = 0 retur

2016-01-19 16:28:35 543

原创 Swift学习之属性

属性1.存储属性 就是存储在特定类或者结构体的实例的一个变量或者常量struct FixedLengthRange { var firstValue = 3 var length = 4}let fixLengthRange = FixedLengthRange()print(fixLengthRange.firstValue)//fixLengthRange.firstVal

2016-01-19 16:27:59 540

原创 Swift学习之类和结构体

类和结构体struct Resolution { var width = 0 var height = 0}class VideoModel { var resolution = Resolution() var interlaced = false var frameRate = 0.0 var name:String?}//结构体自动的提供了成

2016-01-19 16:27:20 607

原创 Swift学习之枚举

枚举 enum 的简单用法rawValue:原始值enum director{ case north case west case sourth case east}enum names{ case iyaqi,wangdi,xiaoyu,wenwen}var someOneName = names.iyaqi//如果已经将枚举的某个值赋给某个变量,也

2016-01-19 16:26:46 280

原创 Swift学习之闭包

闭包的简单用法 //: Playground - noun: a place where people can playimport UIKitlet names = ["Chris", "Alex", "Ewa", "Barry", "Daniella"]func backWards (s1:String,s2:String) ->Bool{ return s1 < s2}var

2016-01-19 16:01:08 764

原创 iOS开发之多工程联编

iOS多工程联编** 在iOS应用开发中,为了开发的规范性,在当前的项目工程文件中引入静态库或者其他工程,并与Cocoapods 配合使用。项目步骤如下:1.先通过建立一个静态库(或者自己已有的静态库)2.将要引入的静态库放到需要引入静态库的工程文件里面详细步骤省略3.使用pod init初始化一个Podfile文件(或者 vi Podfile),在Podfile文件里面按照下面的模板来配置接下来

2016-01-13 14:20:18 991

原创 swift学习之函数

function 函数1.定义函数 func sayHello (personName:String)->String{ let result = "hello,\(personName)" print(result) return result}sayHello("iyaqi") //"hello,iyaqi"2.参数和返回值2.1 无参数func sayHell

2015-12-28 21:20:41 471

原创 Swift 学习之集合的基本用法

集合的基本用法数组:有序的数据1.定义一个数组,并初始化的不同方式var array1 = []var array2 :[String] = ["hello"]var array3 = [String](count: 1, repeatedValue: "world")var array4 = array2 + array3 // "hello world"if !array4.isEmpty

2015-12-24 22:06:59 540

原创 Swift学习之字符串

字符串// 定义一个String,并赋值,也可以直接为"" var hello = "hello" or String()var emptyStr = String()var helloWorld:String = hello + ",world!" //字符串直接相加if !helloWorld.isEmpty { //判断是否为空 for character in helloWorl

2015-12-24 14:08:39 407

原创 swift学习之basic

Swift basic 学习常量 、 变量let 定义一个常量 var 定义一个变量 常量或者变量的名字可以指定除了数字开头等之外的任意字符,包括中文字符等let floatValue = 4.0let orige = 3var apple = 4let 三 = 3let fruits = "i have \(orige + apple) fruits"//print(fruits)基本

2015-12-23 21:56:58 345

原创 C语言文件操作

C语言文件操作详解1.文件指针在C语言中,定义一个文件指针的方法为:FILE *文件指针名;FILE 为大写,它实际是系统定义的一个结构体,里面包含有文件名、文件大小、路径、状态等信息。然后我们就可以通过指针名去访问文件的信息,实现对文件的操作。2.文件的使用方式 r : 只读权限,该文件必须存在 w : 只写权限,若文件不存在,就创建一个文件,若存在,就清空文件然后

2015-04-09 15:06:46 566

原创 iOS之GCD

iOS之GCD操作

2015-04-09 15:03:40 382

原创 OC之block、NSDate、NSData

oc

2015-04-09 14:59:26 381

原创 OC之特性、类别

1.特性(property)在OC中,使用特性可以让我们避免手写setter、getter方法,避免这些问题带来的内存问题。 @property : 编译器指令,编译器会为我们自动创建setter、getter方法的声明,在新版本的XCode中声明的同时也帮我们实现了setter、getter方法。 @synthesize: 为我们实现setter、getter的实现方法。而且可以使用该

2015-04-09 14:56:56 431

原创 OC之NSPredicate(谓词)学习

NSPredicate(谓词)谓词:OC中的谓词操作是针对于数组类型的,他就好比数据库中的查询操作,数据源就是数组,这样的好处是我们不需要编写很多代码就可以去操作数组,同时也起到过滤的作用,我们可以编写简单的谓词语句,就可以从数组中过滤出我们想要的数据。非常方便。在Java中是没有这种技术的,但是有开源的框架已经实现了此功能。实例:定义一个person类@interface

2015-01-13 22:06:40 403

原创 OC之KVC、KVO 学习

OC 学习之 KVC、KVO 知识点详解

2015-01-13 21:49:31 413

原创 OC中如何将对象写入文件中

在OC中,将字符串、数组、字典等对象写到文件中去,十分方便。但分为系统类对象和我们手动创建的对象,其详细情况如下:1)对于系统类对象: ①NSArray:    NSArray *arr = @[@"zhangsan",@"lisi",@"wangwu",@"zhangmazi"]; //创建一个文件路径。 NSString *homePah = [@

2014-12-07 16:34:08 633

原创 vim 内部常用命令(不断补充)

启动or退出vim    在终端输入 vimtutor+回车 进入vim 帮助文档 vimtutor    :q! : 不保存当前文档就退出    :wq! :  保存当前正在编辑的文档然后退出移动光标命令    h ⬅️ 向左移动一个字符    j ⬇️ 向下移动一行    k ⬆️ 向上移动一行    l → 右移动一个字符    $ 光标移动打

2014-12-07 16:17:40 623

原创 OC深浅拷贝

OC对象的深浅拷贝详解

2014-12-04 14:33:37 425

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除