iOS开发知识点总结(二)

来源:互联网 发布:我的世界网易java版 编辑:程序博客网 时间:2024/06/08 06:45

1.NSString拼接字符串的方法

NSString* string; // 结果字符串NSString* string1, string2; //已存在的字符串,需要将string1和string2连接起来string = [NSString initWithFormat:@"%@,%@", string1, string2 ];②string = [string1 stringByAppendingString:string2];③string = [string stringByAppendingFormat:@"%@,%@",string1, string2];

2.计算文本的高度和宽度
iOS 6-

CGSize size = [text sizeWithFont:[UIFont systemFontOfSize:20.0]constrainedToSize:aSizelineBreakMode:UILineBreakModeWordWrap];

iOS 7+

NSDictionary *dict = @{NSFontAttributeName: [UIFont systemFontOfSize:20.0]};CGSize size = [str boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:dict context:nil].size;

3.取出当前项目版本号

NSString *key=(NSString *)kCFBundleVersionKey;NSString *version = [NSBundle mainBundle].infoDictionary[key];

4.执行stroyBoard中控制器间的连线
每条连线有个名称

[self performSegueWithIdentifier:@"home" sender:nil];

5.MKAnnotationView和MKPinAnnotationView的区别
MKAnnotationView可以使用静态图片作为实例作为view
如果想使用Apple自带的标准大头针,那么需要使用MKPinAnnotationView。

6.取消xcode警告
TARGETS->Build Phases->Compile Sources->警告的文件后加-w

7.UIView移除所有子视图的方法

[view.subviews. makeObjectsPerformSelector:@selector(removeFromSuperview)];

8.调用iOS系统功能

//调用 自带mail[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mailto://admin@hzlzh.com"]];//调用 电话phone[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://8008808888"]];//调用 SMS[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"sms://800888"]];//调用自带 浏览器 safari[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.hzlzh.com"]];

9.iOS 7 viewcontroller新增属性automaticallyAdjustsScrollViewInsets,即是否根据按所在界面的navigationbar与tabbar的高度,自动调整scrollview的 inset,设置为no,让它不要自动调整就可以

self.automaticallyAdjustsScrollViewInsets = NO;
  1. 图片的渲染属性
UIImage *image = [[UIImage imageNamed:imageName] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];

①UIImageRenderingModeAutomatic // 根据图片的使用环境和所处的绘图上下文自动调整渲染模式。
②UIImageRenderingModeAlwaysOriginal // 始终绘制图片原始状态,不使用Tint Color。
③UIImageRenderingModeAlwaysTemplate // 始终根据Tint Color绘制图片,忽略图片的颜色信息。
④ renderingMode属性的默认值是UIImageRenderingModeAutomatic,即UIImage是否使用Tint Color取决于它显示的位置

11.The file “xxxx.app” couldn’t be opened because you don’t have permission to view it
查看工程中警告,发现需要更新旧工程的设置 点击Upate to reconmmented settings 选择Perform Changes,再次运行OK

12.快捷代码片段使用
Title
代码片段的标题
Summary
代码片段的描述文字
Platform
可以使用代码片段的平台,有IOS/OS X/All三个选项
Language
可以在哪些语言中使用该代码片段
Completion Shortcut
代码片段的快捷方式,比如XTableView(当我们在工程中输入XTableView时,会自动用我们的代码片段去替换,或者我们直接将其拖入工程中)
Completion Scopes
可以在哪些文件中使用当前代码片段,比如全部位置,头文件中等,当然可以添加多个支持的位置。

将文本块封装到“<#” 和 “#>”中间,这样code snippet将指出我们可以插入自定义文本的完整范围

13.tableView默认选中第一行

//第0区第0行NSIndexPath *first = [NSIndexPath                              indexPathForRow:0 inSection:0];        //设置tableView默认选中第一行        [self.tableView selectRowAtIndexPath:first                                    animated:YES                              scrollPosition:UITableViewScrollPositionTop];        //手动执行选中的方法,用于执行获取子分类        [self tableView:self.tableView didSelectRowAtIndexPath:first];

14.设置UITableView表格行上无内容时不显示分割线

self.tableView.tableFooterView = [[UIView alloc] init];

15.在不新建一个Cell的情况下调整separaLine的位置

_myTableView.separatorInset = UIEdgeInsetsMake(0, 100, 0, 0);

16.点击self.view就让键盘收起

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{   [self.view endEditing:YES];}

17.滑动的时候隐藏navigationbar

[[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60)                                                     forBarMetrics:UIBarMetricsDefault];

18.CollectionView 怎么实现tableview那种悬停的header?
开源库:CSStickyHeaderFlowLayou

19.navigationbar弄成透明的而不是带模糊的效果

[self.navigationBar setBackgroundImage:[UIImage new]                         forBarMetrics:UIBarMetricsDefault];self.navigationBar.shadowImage = [UIImage new];self.navigationBar.translucent = YES;

20.改变uitextfield placeholder的颜色和位置
继承UITextField,重写这个方法

- (void) drawPlaceholderInRect:(CGRect)rect {    [[UIColor blueColor] setFill];    [self.placeholder drawInRect:rect withFont:self.font lineBreakMode:UILineBreakModeTailTruncation alignment:self.textAlignment];}
0 0
原创粉丝点击