1.sandBox的目录结构
home(沙盒名字-一串字符数字混合)
Documents
Library
Caches
Preferences
tmp
1)获取home目录: home(沙盒名字-一串字符数字混合)
NSString *homeDirectory = NSHomeDIrectory();
2012-06-17 14:00:06.098 IosSandbox[3536:f803] /Users/rongfzh/Library/Application Support/iPhone Simulator/5.1/Applications/3B8EC78A-5EEE-4C2F-B0CB-4C3F02B996D2
2)获取document目录
NSArray *paths = NSSearchpathForDirectioriesInDomains(NSDocumentDIrectory,NSUserDomainMask,YES);
NSString *path = [paths objectAtIndex:0];
2012-06-17 14:00:06.099 IosSandbox[3536:f803] path:/Users/rongfzh/Library/Application Support/iPhone Simulator/5.1/Applications/3B8EC78A-5EEE-4C2F-B0CB-4C3F02B996D2/Documents
3)获取cache目录
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *path = [paths objectAtIndex:0];
5EEE-4C2F-B0CB-4C3F02B996D2/Library/Caches
4)获取 Library目录
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory,
NSUserDomainMask, YES);
NSString *path = [paths objectAtIndex:0];
NSLog(@"%@", path);
5)获取Tmp目录
NSString *tmpStr = NSTemporaryDirectory();
s/g7/246bh79130zblw0yjjtc55cw0000gn/T/
7介绍一下 pushing的整体流程
作用:NSNotificationCenter是专门供程序中不同类间的消息通信而设置的.
注册通知:即要在什么地方接受消息
[NSnotificationCenter defaultCenter]addObserver:self selector:@selector(dosmething:) name:@“name”
发送通知:调用观察者处的方法。
注册方法的写法:
- (void) mytest:(NSNotification*) notification
{
}
8.关于block的理解,需要注意什么?自定义一个块A,参数为int,返回值为int
blcok 如果想递归调用,代码块变量必须是静态变量或者全局变量。
代码块本质上是和其他变量类似。不同的是,代码块存储的数据是一个函数体。使用代码块是,你可以像调用其他标准函数一样,传入参数数,并得到返回值。
int (^A)(int) = ^(int num){ return num*num};
9。#import 和#include的区别,ios7中的@import呢?
[
下面的总结:#import#include基本相同,一般来说,#include是用于c,c++中的。可能导致重复引用。而#import则更多是用在oc中,且避免勒重复引用的问题。在ios7中添加了新语法 @import,和#improt的作用大致相同,但是缺点是不能使用在第三方库和自定义的类中。
]
#include
{
对应新增语法:@import,导入系统头文件,例如:@import MapKit; 或者库的部分头文件:@import UIKit.UIView;
优点:不需要再在Build Phases里的Link Binary With Libraries添加系统framework文件;缺点:不支持自定义或第三方库
}正常情况下是不可以直接点击的。
只有设置UIImageView的属性 userInteractionEnabled = yes才可以点击、。
原文:http://blog.csdn.net/ministarler/article/details/19421879