2010-01-18

01-18-1

NSComparisonResult

{NSOrderedAscending = -1L, NSOrderedSame, NSOrderedDescending};——升、同、降

排序比较次数:n - 1

根据长度比较:sortedArrayUsingSelector 将根据数组中两个元素的长度返回NSComparisonResult的结果进行排序

长度相同,--NSOrderedSame,比较结果长,按升序进行排序---NSOrderedAscending,比较结果短,按降序进行排序---NSOrderedDescending

16进制颜色:

unsigned int red, green, blue;

NSRange range;

range.length = 2;

range.location = 0;

[[NSScanner scannerWithString:[hexColor substringWithRange:range]] scanHexInt:&red];

range.location = 2;

[[NSScanner scannerWithString:[hexColor substringWithRange:range]] scanHexInt:&green];

range.location = 4;

[[NSScanner scannerWithString:[hexColor substringWithRange:range]] scanHexInt:&blue];

return [UIColor colorWithRed:(float)(red/255.0f) green:(float)(green/255.0f) blue:(float)(blue/255.0f) alpha:1.0f];



01-18-2

SystemConfiguration框架里有提供了和联网相关的函数,可以用来检查网络的连接状态。

(1)创建测试连接的引用

SCNetworkReachabilityRef 处理网络地址和名称

1、SCNetworkReachabilityRef    defaultRouteReachability = SCNetworkReachabilityCreateWithAddress(NULL, (struct sockaddr *)&zeroAddress);

为指定的地址创建一个可达性参考

根据传入的地址测试连接,第一个参数可以为NULL或kCFAllocatorDefault,第二个参数为需要测试连接的IP地址,当为0.0.0.0时则可以查询本机的网络连接状态。同时返回一个引用必须在用完后释放。

2、SCNetworkReachabilityRef SCNetworkReachabilityCreateWithName (

CFAllocatorRef allocator,

const char *nodename

);

根据传入的网址测试连接,第二个参数比如为"www.apple.com"

(2)确定连接的状态:

Boolean SCNetworkReachabilityGetFlags (

SCNetworkReachabilityRef target,

SCNetworkReachabilityFlags *flags

);

BOOL didRetrieveFlags = SCNetworkReachabilityGetFlags(defaultRouteReachability, &flags);

这个函数用来获得测试连接的状态,第一个参数为之前建立的测试连接的引用,第二个参数用来保存获得的状态,如果能获得状态则返回TRUE,否则返回FALSE

(3)主要常量介绍:

SCNetworkReachabilityFlags:保存返回的测试连接状态

其中常用的状态有:

kSCNetworkReachabilityFlagsReachable:能够连接网络

kSCNetworkReachabilityFlagsConnectionRequired:能够连接网络,但是首先得建立连接过程

kSCNetworkReachabilityFlagsIsWWAN:判断是否通过蜂窝网覆盖的连接,比如EDGE,GPRS或者目前的3G.主要是区别通过WiFi的连接。


01-18-3

//同类型赋值----NSValue

CGRect rect = CGRectMake(0, 2, 59, 49);

NSValue *vava = [NSValue valueWithBytes:&rect objCType:@encode(CGRect)];

CGRect get;

[vava getValue: &get];    //

//Copies the value into the specified buffer.

2、stringByExpandingTildeInPath

将路径中的代字符扩展成用户主目录(~)或指定用户的主目录(~user)。


3、bitcode是被编译程序的一种中间形式的代码。包含bitcode配置的程序将会在App store上被编译和链接。bitcode允许苹果在后期重新优化程序的二进制文件,而不需要重新提交一个新的版本到App store上。


4、%02X

X 表示以十六进制形式输出02 表示不足两位,前面补0输出;出过两位,不影响

printf("%02X", 0x123); //打印出:123printf("%02X", 0x1); //打印出:01


%02X

X 表示以十六进制形式输出

02 表示不足两位,前面补0输出;出过两位,不影响


5、加密过程:

1]、对需要加密的字符,进行字符编码转换,转换成utf-8

2]、CC_MD5( cStr, strlen(cStr), result);,把cStr字符串转换成了一组16字节长度的八进制(这个过程不可逆转) 存储到了result这个空间中

3]、然后进行16进制输出



6、对position与anchorPoint的理解:

position是layer相对superLayer坐标空间的位置,anchorPoint点是相对layer的,两者是相对不同的坐标空间的一个重合点

你可能感兴趣的:(2010-01-18)