随笔分类 - object-c
摘要:iOS视图控制对象生命周期-init、viewDidLoad、viewWillAppear、viewDidAppear、viewWillDisappear、viewDidDisappear的区别及用途init-初始化程序viewDidLoad-加载视图viewWillAppear-UIViewCon...
阅读全文
摘要:在介绍静态属性之前,我们先来看一个类的设计,有一个Account(银行账户)类,假设 它有3个属性:amount(账户金额)、interestRate(利率)和owner(账户名)。在这3个属性中,amount和owner会因人而 异,不同的账户这些内容是不同的,而所有账户的interestRate...
阅读全文
摘要:与静态属性类似,Swift中还定义了静态方法,也称为类型方法,所谓“类型”是指枚举、结构体和类。静态方法定义的方法也是与静态属性类似的,枚举和结构体的静态方法使用的关键字是static,类的静态方法使用的关键字是class。一、结构体中静态方法下面我们先看一个结构体静态方法的示例,代码如下:[htm...
阅读全文
摘要:在ios4之后,引入了代码块的特性,在gcd中会经常的用到,所以决定好好的看看代码块文档,把这块总结一下。从头开始讲解代码块。1.声明和使用代码块一般用^操作符声明一个块变量,并作为块的开始符。而块的本身用{}包括起来,就像下面那样。int multiplier = 7;int (^myBlock)...
阅读全文
摘要:在两个不同的控制器之间传递数据,可以使用代理传值或者block传值。例子是一个简单通讯录。主界面如下:添加联系人界面查看/编辑联系人界面:默认是查看模式,点击编辑后进入编辑模式编辑模式数据更新成功。其中添加联系人界面的数据传递使用代理方式实现。编辑联系人界面的数据传递使用block实现。下面来看具体...
阅读全文
摘要:版权声明:原创作品,谢绝转载!否则将追究法律责任。一个Objective-c类定义了一个对象结合数据相关的行为。有时候,这使得他有意义的表达单个任务或者单元的行为。而不是集合的方法。blocks是语言的特性,我们可以在C C++ 和Objective-c看到,这允许你创建不同的代码片段,这代码片段可...
阅读全文
摘要:1.相关概念在这篇笔记开始之前,我们需要对以下概念有所了解。1.1 操作系统中的栈和堆注:这里所说的堆和栈与数据结构中的堆和栈不是一回事。我们先来看看一个由C/C++/OBJC编译的程序占用内存分布的结构:栈区(stack):由系统自动分配,一般存放函数参数值、局部变量的值等。由编译器自动创建与释放...
阅读全文
摘要:版权声明:本文为博主原创文章,未经博主允许不得转载。 代码块本质上是和其他变量类似。不同的是,代码块存储的数据是一个函数体。使用代码块是,你可以像调用其他标准函数一样,传入参数数,并得到返回值。脱字符(^)是块的语法标记。按照我们熟悉的参数语法规约所定义的返回值以及块的主体(也就是可以执行的代码)。...
阅读全文
摘要:BlockApple 在C, Objective-C,C++加上Block这个延申用法。目前只有Mac 10.6 和iOS 4有支持。Block是由一堆可执行的程序组成,也可以称做没有名字的Function(Anonymous function)。如果是Mac 10.6 或 iOS 4.0 之前的平...
阅读全文
摘要:iOS开发中,如果不进行适当的封装,使用协议或者继承类来进行开发,你就会遇到传说中的ViewController(以后简称VC) Hell的问题……比如说,我们先声网App中为了调用接口,做简单的判断,会有如下的垃圾代码(前辈遗留下来的):override func viewDidLoad() { ...
阅读全文
摘要:#import /* OC不同于Java C++ 它没有字符串对象 只有NS对象 NS就是乔布斯第一个公司NeXt的类集合 被收购之后才有了CG类集合 统一合并到Foundation框架 以及后来的Cocoa框架 QuartZ Cocoas-2d 3d框架... 一般来说 ObjC中的类不是NS就...
阅读全文
摘要:一、第一个界面// Created by 秦志伟 on 14-6-13.import UIKitclass ZWRootViewController: UIViewController { init(nibName nibNameOrNil: String?, bundle nibBundleO...
阅读全文
摘要:开发中央步骤: 1.添加CoreBluetooth.framework框架到你的工程 2.继承两个协议:CBCentralManagerDelegate和CBPeripheralDelegate 个人写的demo,有详细注释。看不懂的在提出来,这里就不做过多的解释了。 1 // 2 /...
阅读全文
摘要:Demo地址:WEBlueToothManager在写这个博客之前,空余时间抽看了近一个月的文档和Demo,系统给的解释很详细,接口也比较实用,唯独有一点,对于设备 的唯一标示,网上众说纷纭,在这里我目前也还没有自己的见解,只是在不断的测试各种情况,亲测同一设备的UUID对于每台iPhone设备都不...
阅读全文
摘要:今天看别人代码的时候发现这样的用法navigationController.viewControllers = @[secondViewController];这里用到了@[]。刚开始不是很明白,问了才知道,原来这是数组的初始化。是ios6之后引入的方式。mark下。@[] 初始化不可变数组@{...
阅读全文
摘要:一、@dynamic与@synthesize的区别@property有两个对应的词,一个是@synthesize,一个是@dynamic。如果@synthesize和@dynamic都没写,那么默认的就是@syntheszie var = _var; @synthesize的语义是如果你没有手动实...
阅读全文
摘要:最近做论坛功能,发帖的时候需要用到从相册中选取图片然后上传,由于每次上传图片的最大数量为9张,所以需要对图片进行压缩。开始时用了以前经常用的压缩的方法:[objc] view plaincopy //压缩图片质量 +(UIImage *)reduceImage:(UIImage *...
阅读全文
摘要:闭包是功能性自包含模块,可以在代码中被传递和使用。 Swift 中的闭包与 C 和 Objective-C 中的 blocks 以及其他一些编程语言中的 lambdas 比较相似。闭包的形式主要有三种:1. 全局函数是一个有名字但不会捕获任何值的闭包2. 嵌套函数是一个有名字并可以捕获其封闭函数域内...
阅读全文
摘要:我们可用swift的闭包来定义变量的值。 先来一个简单的例子大家先感受感受。 定义一个字符串的变量的方法: 直接赋值var str="JobDeer"还可以用闭包的方式定义:var str:String={ return "JobDeer"}()闭包还可以这么定义,省略了等号和括号:varst...
阅读全文
摘要:在同一个工程中是可以同时使用Swift和OC的,但不可以同时出现在同一个文件中。OC调用Swift相关信息的方法在***.m文件中导入工程名-Swift.h即可。如工程名为ABC,则在需要使用Swift相关信息的.m文件中#import "ABC-Swift.h"即可。Swift调用OC相关信息的方...
阅读全文

浙公网安备 33010602011771号