码迷,mamicode.com
首页 > 移动开发 > 详细

ios 写项目的时候遇到的问题及解决方案(2)

时间:2016-01-14 18:57:38      阅读:493      评论:0      收藏:0      [点我收藏+]

标签:

11.自适应文本高度

1 NSDictionary *attributes = @{NSFontAttributeName: [UIFont systemFontOfSize:14]};
2 
3 CGRect rect = [text boundingRectWithSize:CGSizeMake(ViewWidth, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:attributes  context:nil];
4 
5 return rect.size.height;

 

 

12 iOS9 适配设置

实际上在Xcode 7中,我们新建一个iOS程序时,bitcode选项默认是设置为YES的。我们可以在”Build Settings”->”Enable Bitcode”选项中看到这个设置。

要么让第三方库支持,要么关闭target的bitcode选项。

 

13.   iOS9 HTTPs转HTTP

 1 <key>NSAppTransportSecurity</key>
 2 
 3     <dict>
 4 
 5         <!--Connect to anything (this is probably BAD)-->
 6 
 7         <key>NSAllowsArbitraryLoads</key>
 8 
 9         <true/>
10 
11     </dict>

 

 

 

14.截取字符串

 [str substringFromIndex:6];

substringWithRange:NSMakeRange(4,2)截取字符串的一部分,从第4位开始,截取两位

substringToIndex: n截取到第几位

(substringFromIndex:n)字符串从第n 位开始截取,直到最后 

 

16.NSScanner: nil string argument

错误原因是我们在调用某个方法的时候,传入了一个空字符串(注意区别于字符串内容为空)作为方法参数。

我从服务器上获取某字符串数据,考虑到有些对象不含这个字符串变量,我在使用时先判断该字符串是否为空,例如:

假设,这个字符串名叫str,

先判断if(str!=nil){

//do something

double data=[str doubleValue];

}

但是,当数据为空时依旧报错,

苹果官方文档时,有这么一个代码:

  1. id aValue = [arrayWithNull objectAtIndex:0];  
  2. if (aValue == nil) {  
  3.     NSLog(@"equals nil");  
  4. } else if (aValue == [NSNull null]) {  
  5.     NSLog(@"equals NSNull instance");  
  6.     if ([aValue isEqual:nil]) {  
  7.         NSLog(@"isEqual:nil");  
  8.     }  
  9. }  
  10. // output: "equals NSNull instance”

 

虽然最后我的问题解决了,我在if判断中用

 

  1. if(![tmpNewsModel.latitude isEqual:[NSNull null]]){  
  2.     //do something  
  3. }  

问题是解决了,但是还不太理解nil和NSNull的区别?

 

17.iphone 尺寸

技术分享


18.修改mac host文件

sudo nano /etc/hosts

同样是输入密码,打开 hosts 文件,根据你的需要对该文件进行编辑,编辑完毕之后按 ctrl+o 保存,

出现 File Name to Write: /etc/hosts 的时候按回车确认,再按 ctrl+x 退出即可。

 

19. IOS8 设置TableView Separatorinset 分割线从边框顶端开始   

经过测试加入下面方法 在ios7 8上都可以正常工作

 1 -(void)viewDidLayoutSubviews
 2 
 3 {
 4 
 5     if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) {
 6 
 7         [self.tableView setSeparatorInset:UIEdgeInsetsMake(0,0,0,0)];
 8 
 9     }
10 
11     
12 
13     if ([self.tableView respondsToSelector:@selector(setLayoutMargins:)]) {
14 
15         [self.tableView setLayoutMargins:UIEdgeInsetsMake(0,0,0,0)];
16 
17     }
18 
19 }
20 
21  
22 
23 -(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
24 
25 {
26 
27     if ([cell respondsToSelector:@selector(setSeparatorInset:)]) {
28 
29         [cell setSeparatorInset:UIEdgeInsetsZero];
30 
31     }
32 
33     
34 
35     if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {
36 
37         [cell setLayoutMargins:UIEdgeInsetsZero];
38 
39     }
40 
41 }

 

 

20.url   里面不能有中文字符,需转换否会请求出错

 

ios 写项目的时候遇到的问题及解决方案(2)

标签:

原文地址:http://www.cnblogs.com/xblover/p/5130971.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!