-
设置图标和启动屏?
- 将图片资源放在
Images.xcassets
,Images.xcassets只有iOS7+支持,iOS6前不支持,Images.xcassets中的图片编译后被打包进Assets.car这个文件; - 如果程序部署的时候设置为6.0,图片还是会放在bundle的根文件下;
- 设置某个程序的图标,在Images.xcassets中的
AppIcon
设置。 - 设置某个程序的启动图片有两种方式,一种是修改
LaunchScreen.xib
,另一种,设置Launch Images Source为LaunchScreen
,清空Launch Screen File,在Images.xcassets中的LaunchImage
设置启动图片。
- 将图片资源放在
常用方法?
@property(nonatomic,getter=isUserInteractionEnabled) BOOL userInteractionEnabled; // 设置某个控件是否可以和用户交互
- (void)bringSubviewToFront:(UIView *)view; // 将某个子控件拿到最前面
- (void)performSelector:(SEL)aSelector withObject:(id)anArgument afterDelay:(NSTimeInterval)delay; // 延迟调用某个方法
- (void)makeObjectsPerformSelector:(SEL)aSelector; // 让数组中的每个对象都调用aSelector这个方法
-
KVC?
- KVC的全称:Key Value Coding;
- KVC把字典中的值,赋值当前对象指定的属性的两种方式;
- 遍历字典中所有的key,并把和对象属性对应的key赋值;
- KVC设置值及KVC取值。
// KVC把字典中的值,赋值当前对象指定的属性的两种方式
self.answer = dict[@"answer"]; // 第一种
self.icon = dict[@"icon"];
self.title = dict[@"title"];
self.options = dict[@"options"];
[self setValue:dict[@"answer"] forKeyPath:@"answer"]; // 第二种
// 遍历字典中所有的key,并把和对象属性对应的key赋值
[self setValuesForKeysWithDictionary:dict];
LNPerson *person = [[LNPerson alloc] init];
// kvc设置值
[person setValue:@"zs" forKeyPath:@"name"];
[person setValue:@18 forKeyPath:@"age"];
// kvc取值
[person valueForKeyPath:@"name"];
[[person valueForKeyPath:@"age"] intValue];
NSDictionary *dict = [person dictionaryWithValuesForKeys:@[@"name",@"age"]];
LNPerson *p1 = [[LNPerson alloc] init];
p1.name = @"zs";
p1.age = 18;
LNPerson *p2 = [[LNPerson alloc] init];
p2.name = @"ls";
p2.age = 19;
LNPerson *p3 = [[LNPerson alloc] init];
p3.name = @"ww";
p3.age = 16;
NSArray *persons = @[p1,p2,p3];
// 取出数组中所有人的名字
// 方法1循环 取出
// 方法2
NSArray *names = [persons valueForKeyPath:@"name"];