1.切换根视图控制器淡出的效果(切换成登陆页面之类的)
self.window.rootViewController = loginVC;
[UIView transitionWithView:self.window
duration:0.5
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^ { self.window.rootViewController = loginVC; }
completion:nil];
2.一个viewcontroller 包含多个viewcontroller(可用在切换页面上)
[self addChildViewController:self.cv1];
[self addChildViewController:self.vc2];
self.currentViewController = self.vc1;
[self.view addSubview:self.vc1.view];
然后在切换的时候用下面方法
[self transitionFromViewController:self.currentViewController toViewController:self.equipmentListVC duration:0 options:UIViewAnimationOptionTransitionNone animations:^{
} completion:^(BOOL finished) {
[self.view addSubview:self.equipmentListVC.view];
self.currentViewController = self.equipmentListVC;
}];
这个方法可以用于在给vc瘦身上,分出多个子视图控制器,可读性也会比较好。
3.图片不能有alpha 通道
上架App过程中,在上传预览图、图标的时候,提示:如果图片有问题,页面上会提示“图片不能有alpha 通道。”
解决方案:打开finder,找到图片,显示简介,这里可以看到图片是否带有alpha通道;
用mac自带的预览打开图片,选择导出,这里可以渲染是否带alpha通道;
4.在任意页面让键盘消失掉
[[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder) to:nil from:nil forEvent:nil];
5.数组内查找(数组包含是字典或对象都可以)
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name == %@", "张三"];
NSArray *filteredArray = [array filteredArrayUsingPredicate:predicate];
6.数组排序
7.快速设置页面搭建
使用storyboard的静态tableview
8.设置label的行间距(文字样式什么的建议用NSMutableAttributedString)
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:self.contentLabel.text];
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
[paragraphStyle setLineSpacing:3];
//调整行间距
[attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [self.contentLabel.text length])];
self.contentLabel.attributedText = attributedString;
9.快速设置tableview的分割线距离
self.table.separatorInset = UIEdgeInsetsMake(0, 10, 0, 0);
10.去掉多余的分割线
self.table.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero];