- 博客(34)
- 收藏
- 关注
转载 UIPageViewController-浅析
一、UIPageViewController概念控件为我们提供了一种像翻书效果的一种控件。我们可以通过使用UIPageViewController控件,来完成类似图书一样的翻页控制方式。二、使用UIPageViewController控件先假象一下,一本书大概可以分为:1.每一页。2.每一页中相应的数据。使用UIPageViewController控件,也是
2015-06-03 16:49:31
431
转载 UITabBarController使用详解
UITabBarController是IOS中很常用的一个viewController,例如系统的闹钟程序,ipod程序等。UITabBarController通常作为整个程序的rootViewController,而且不能添加到别的container viewController中。 首先我们看一下它的view层级图:一、手动创建UITabBarController
2015-05-22 19:27:13
406
转载 UIImageView
1、创建一个UIImageView:创建一个UIImageView对象有五种方法:UIImageView *imageView1 = [[UIImageView alloc] init];UIImageView *imageView2 = [[UIImageView alloc] initWithFrame:(CGRect)];UIImageView *imageView3 = [
2015-05-18 14:35:00
444
转载 根据字体多少使UILabel自动调节尺寸
在大多属性情况下,给UILabel进行动态数据绑定的时候,往往需要根据字符串的多少,动态调整UILabel的宽度或高度。下面分两种情况考虑:1、UILabel宽度不变,根据字体多少,自动调整UILabel的高度,并折行显示。代码如下:[cpp] view plaincopyUILabel *label = [[UILa
2015-05-16 21:13:30
386
转载 UIView的alpha、hidden和opaque属性之间的关系和区别
原文地址:http://blog.csdn.net/wzzvictory/article/details/10076323一、alpha液晶显示器是由一个个的像素点组成的,每个像素点都可以显示一个由RGBA颜色空间组成的一种色值。其中的A就表示透明度alpha,UIView中alpha是一个浮点值,取值范围0~1.0,表示从完全透明到完全不透明。当把alpha的值设置成
2015-05-16 21:00:03
502
转载 CGContext
quartz 是主要的描画接口,支持基于路径的描画、抗锯齿渲染、渐变填充模式、图像、颜色、坐标空间变换、以及PDF 文档的创建、显示和分析。UIKit 为Quartz的图像和颜色操作提供了Objective-C 的封装。Core Animation为很多UIKit的视图属性声明的动画效果提供底层支持,也可以用于实现定制的动画。在调用您提供的drawRect:方法之前,视图对象会自动配置其描画环
2015-05-07 13:22:33
325
转载 归档
在Objective-C语言中,归档是一个过程,即用某种格式来保存一个或多个对象,以便以后还原这些对象。类似于Java中的序列化和反序列化。在Mac OS X上的应用程序使用XML属性列表(或plists)存储诸如默认参数选择、应用程序设置和配置信息这样的数据。使用PropertyList Editor程序来创建属性列表。使用
2015-05-05 13:26:36
371
转载 copy和mutableCopy
1.foundation非集合对象如果对一不可变对象复制,copy是指针复制(浅拷贝)和mutableCopy就是对象复制(深拷贝)。如果是对可变对象复制,都是深拷贝,但是copy返回的对象是不可变的。2.foundation集合对象对于集合类本身,上面讨论的结论也是适用的,需要探讨的是复制后容器内对象的变化,copy的集合是指针复制,mutableCopy的集合是对象复制,但是集
2015-05-04 22:59:26
828
转载 内存管理和ARC
内存管理关心的是清理(回收)不用的内存,以便内存能够再次利用。提供给Objective-C程序员的基本内存管理模型有以下三种:1)自动垃圾收集。(iOS运行环境并不支持垃圾收集,在这个平台开发程序时没有这方面的选项,只能用在Mac OS X 程序上开发。这个机制挺恶心的,用mac电脑的人知道,当内存不足的时候,机器基本上就是卡死了。)2)手工引用计数和自动释
2015-05-04 20:56:46
525
转载 NSData, NSURL, NSBundle
NSData:创建方法:+ (id)data;+ (id)dataWithBytes:(constvoid *)bytes length:(NSUInteger)length;复制C数组所包含的数据来初始化NSData的数据+ (id)dataWithBytesNoCopy:(void *)bytes length:(NSUInteger)length;直接利用C数组所包含的数据来
2015-05-04 19:50:45
1363
转载 NSFileManager,NSPathUtilities,NSProcessInfo和NSFileHandle
NSFileManager:管理文件和目录使用NSFileManager,文件或目录使用文件的路径名为唯一标识。完整路径也称为绝对路径,以斜线(/)开始。特殊的代字符(~)作为用户主目录的缩写。当前目录为".";父目录为“..”;创建方法:+ (NSFileManager *)defaultManager;一些重要常用的方法:目录方法:
2015-05-04 00:22:46
458
转载 NSSet,NSMutableSet,NSIndexSet
NSArray:有序的集合,NSSet:无序的集合,散列存储。 但是NSSet保证数据的唯一性。当插入相同的数据时,不会有任何效果。从内部实现来说是hash表。NSMutableSet是NSSet的子类,是NSSet的可变形式。NSSet、NSMutableSetNSSet的使用[NSSet setWithSet:(NSSet *)set]; 用另外一个set对象构造[NS
2015-05-03 20:14:44
313
转载 NSDictionary和NSMutableDictionary
字典类字典集合, 它是由“键-值”对构成的集合。 键集合不能重复,也就是说字典中的键必须是单值的;值集合没有特殊要求。 键和值集合中的元素通常是字符串,但也可以是任何对象, 但是不能是nil。 词典可以使固定的,也可以是可变的。可变词典中的记录可以动态添加和删除。和数组对象不一样,词典对象是无序的。
2015-05-03 19:36:15
376
转载 NSValue
处理自定义结构体类型,方法 123+ (NSValue *)valueWithBytes:(const void *)value objCType:(const char*)type- (id)initWithBytes:(const void *)value objCType:(const char *)type- (void)getValue
2015-05-03 19:18:33
349
转载 NSArray和NSMutableArray
在Foundation框架中数组被封装成为类,数组对象:是Foundation数组是有序的对象集合。数组有两种:NSArray不可变数组类和NSMutableArray可变数组类。注意,需要标记参数数组的结束,将这个数组的最后一个值定为nil,它实际上并不会存储在数组中。数组中的元素是由它们的索引数确定的。与NSString对象类似,索引从0
2015-05-03 18:44:14
439
转载 数组排序
1、简单排序(sortedArrayUsingSelector:)如果只是对字符串的排序,可以利用sortedArrayUsingSelector:方法就可以了,代码如下?123456//简单排序voidsortArray1(){ NSArray *arra
2015-05-03 18:34:36
328
转载 枚举数组
objectAtIndex: enumeration使用一个 for 循环,递增循环变量,然后用 [myArray objectAtIndex:index] 来访问元素。这是最基本的枚举形式。?1234NSUInteger count = [myArray count];for (NSUIn
2015-05-03 18:12:42
2905
转载 Objective-c中的C特性
数组:定义一组有序的数据项,即数组。如果在字符数组结尾添加一个终止空字符(‘\0’),就产生了一个通常称为字符串的变量。和其他变量类型一样,必须在使用之前先声明数组,数组的声明涉及声明数组所包含元素的数值类型,以及将存储在数组中的最大元素数目。函数:如果使用了自动引用计数(ARC),那么每次调用函数(方法)时,局部对象的变量都会默认初始化
2015-05-03 17:04:56
388
转载 NSString和NSMutableString
字符串类在Foundation框架中字符串类有两种: NSString不可变字符串类和NSMutableString可变字符串类。 NSString是定义固定大小的字符串, NSMutableString是可对字符串做追加、删除、 修改、 插入和拼接等操作而不会产生新的对象。NSString类NSSTring的类,用于处理字符串对象。
2015-05-03 14:22:11
422
转载 NSNumber
基本数据类型:int、 char、 float和double都不是类, 不具有方法、 成员变量和属性, 以及面向对象的特征。 为了实现“一切都是对象” 的承诺, 因此在Foundation框架中使用NSNumber类来封装这些数字类型。 这样数字就具有了面向对象的基本特征了。也就是说:如果需要存储基本数据类型(包括char数据类型),可以
2015-05-03 13:34:10
483
转载 预处理程序
预处理提供了一些工具,使用这些工具更易于开发、阅读、修改程序,也易于将程序移植到不同的系统中。你也可以使用预处理程序定制Objective-C语言,以适应特定应用的编程或自己的编程风格。预处理程序是Objective-C编译过程的一部分,它可以识别散布在程序中的特定语句。预处理程序使用井号#标记,这个符号必须是一行中的第一个非空格字符。
2015-05-03 13:00:14
1075
转载 分类与协议(补)
分类与协议是OC比较有特色的部分。从表面来看,分类呢有点类似抽象方法在抽象类中(C++或者Java里的那个抽象类概念)。协议类似接口(Java语言那个接口),但是又不能“一视同仁”。分类概念分类(Category) 允许向一个类文件中添加新的方法声明, 它不需要使用子类机制, 并且在类实现的文件中的同一个名字下定义这些方法。 其语
2015-05-03 12:33:31
325
转载 协议(protocol)和委托(delegate)
1.protocol protocol和interface的概念类似,是object-c语法的一部分。protocol就是一系列不属于任何类的方法的列表。其中声明的方法能被任何类实现。只在protocol中定义行为,在不同的情况下使用不同的实现。这种模式一般称为代理模式。在iOS和OS X开发中,Apple采用了大量的代理模式来实现MVC中View和Controlle
2015-05-02 16:54:07
537
转载 Objective-C分类 (category)和扩展(Extension)
1、分类(category)使用Object-C中的分类,是一种编译时的手段,允许我们通过给一个类添加方法来扩充它(但是通过category不能添加新的实例变量),并且我们不需要访问类中的代码就可以做到,分类覆写一个方法之后,再也不能访问原方法,且对子类有效。我们可以为一个类创建一个新的方法,而不需要在代码中编辑类定义。下面就是定义并使用分类的例子程序,通过下面代码,我们可
2015-05-02 15:32:38
398
转载 enum和typedef enum 在IOS中的使用
第一、typedef的使用C语言里typedef的解释是用来声明新的类型名来代替已有的类型名,typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)如:typedef char gender;gender a;与char a;语句相同。第二 、enum
2015-05-02 14:11:33
543
转载 对象初始化
众所周知,Objective-C是一门面向对象的语言,一般情况下,我们在Objective-C中定义一个类时,总要提供一个初始化方法,一般大家都是这样写的:?12345678- (MyClass *)init { self = [super init
2015-04-30 09:12:53
483
转载 instancetype和id异同
一、什么是instancetypeinstancetype是clang 3.5开始,clang提供的一个关键字,表示某个方法返回的未知类型的Objective-C对象。我们都知道未知类型的的对象可以用id关键字表示,那为什么还会再有一个instancetype呢?二、关联返回类型(related result types)根据Cocoa的命名规则,满足下述规则的方法:
2015-04-30 08:57:05
384
转载 object-c的异常处理机制
异常处理机制是由这个四个关键字支持的:@try,@catch,@thorw,@finally。当代码有可能出现异常时,我们把他放到@try语句块中。@catch()块包含了处理@try块里的抛出的异常的逻辑。无论异常是否发生,@finally块里面的语句都会执行。如果直接使用@throw块来抛出异常,这个异常本质上是一个OC的对象。咱们可以使用NSException对象,但是不局限于他们。
2015-04-30 00:38:48
530
转载 多态,动态类型,动态绑定
一、多态相同的名称、不同的类。使不同的类共享相同的方法名称的能力。二、动态绑定和id类型id——通用的对象类型,可以用来存储属于任何类的对象。如:id dataValue;(不用加*号)三、编译时和运行时检查存储在id变量中的对象类型在编译时无法确定,所以一些测试推迟到运行时进行。四、id数据类型与静态类型将一个变量定义为特定类的对象时,使用
2015-04-30 00:15:15
541
转载 CGPonit,CGSize,CGRect
1、数据类型:CGFloat: 浮点值的基本类型CGPoint: 表示一个二维坐标系中的点CGSize: 表示一个矩形的宽度和高度CGRect: 表示一个矩形的位置和大小typedef float CGFloat;// 32-bittypedef double CGFloat;// 64-bitstruct CGPoint { CGFloat x; CGF
2015-04-28 21:25:17
924
转载 UIWindow & UIWindowLevel笔记
本文转载自:http://www.cnblogs.com/smileEvday/archive/2012/03/27/2420362.html一、UIWindow是一种特殊的UIView,通常在一个程序中只会有一个UIWindow,但可以手动创建多个UIWindow,同时加到程序里面。UIWindow在程序中主要起到三个作用: 1、作为容器,包含app所要显示
2015-04-02 22:42:50
336
转载 视图控制器对象的生命周期
视图控制器UIViewController是我们程序中视图和模型数据的纽带,是MVC设计模式中的控制层,我们视图的创建和数据的交互都是在UIViewController类或者其子类中进行的,我们何时何地去创建视图和进行数据交互都跟它的生命周期息息相关。当我们创建一个视图控制器的时候,它的生命周期会涉及init、initWithNibName:bundle:、loadView、vie
2015-03-31 18:32:35
613
转载 什么是Nib文件
Nib文件是一种特殊类型的资源文件,它用于保存iPhone OS或Mac OS X应用程序的用户接口。Nib文件是Interface Builder文档。通常您会使用Interface Builder设计应用程序的可视部分-例如窗口或视图。有些时候,您可能也用它来配置一些不可视的对象,例如控制器对象(用于管理窗口和视图)。实际上,所有这些操作都是在编辑一份Interface Builder文档,即
2015-03-31 18:19:13
439
转载 IOS中NSUserDefaults的用法(轻量级本地数据存储)
NSUserDefaults适合存储轻量级的本地数据,比如要保存一个登陆界面的数据,用户名、密码之类的,个人觉得使用NSUserDefaults是首选。下次再登陆的时候就可以直接从NSUserDefaults里面读取上次登陆的信息咯。因为如果使用自己建立的plist文件什么的,还得自己显示创建文件,读取文件,很麻烦,而是用NSUserDefaults则不用管这些东西,就像读字符串一样,直接
2015-03-30 22:13:38
274
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人