零散知识点

IOS armv

Armv6:iPhone 2G/3G、ipod1G/2G

Armv7:iPhone3GS/4/4s、ipod3G/4G、ipad1G/2G/3G

Armv7s:iPhone5

 

URL中含有%

当你的接口中含有%22时你要将其替换为",否则客户端是无妨访问。你将含有%22的接口复制到浏览器中进行打开,观察URL的变化,你会发现,原来有%22的地方都被编码成",当你再次从浏览器复制出来时,URL有还原成原来含有%22的URL,所以客户端在使用时要将其手动替换。

 

NSUserDefault存储NSMutableDictionary

在用NSUserDefaulsts存储值的时候,如果有很多值并且有一定相关性,则可以用 NSDictionary存储,如:

NSDictionary*authData = [NSDictionarydictionaryWithObjectsAndKeys:

                             sinaweibo.accessToken, @"AccessTokenKey",

sinaweibo.expirationDate, @"ExpirationDateKey",

                             sinaweibo.userID, @"UserIDKey",

                             sinaweibo.refreshToken, @"refresh_token", nil];

 

但有一点需要注意!NSUserDefaults不管你存进去的是可变字典还是不可变字典,它一律给你当成不可变字典,所以如果要取出来当可变字典用,可以如下:

NSMutableDictionary *shareTime = [[defaultsobjectForKey:@"shareTime"] mutableCopy];

KVO实现时要注意的

在实现KVO时,如果几个controller中展示的是一样的数据,变化是一起的,要将此数据封装成一个类,并使用单例,然后多个controller对它进行观察。

 

IOS 图像

1、CGImageRef pickImage =(CGImageCreateWithImageInRect([image CGImage], rect));

使用这个则必须调用相应的释放方法,即使已经使用了arc

CGImageRelease(pickImage);      

2、uiedgeinsetsmake(image.size.heigh/2,image.size.width/2,image.size.hegit/2,image.size.width/2)

让Image当背景,会被拉伸。为什么这样呢?

正常拉伸图片只允许在top—bottom之间留1px被拉伸,即first and third参数,left—right之间留1px被拉伸,即second and fourth 参数。

 

 

界面消失与出现 delegate

[self dismissViewControllerAnimated:YEScompletion:^{

               [self.delegate numberOfRowsSelected:[objects count] withData:objects];   }];

如果放出去让delegate执行的方法,要这样,以保证delegate里有pressentViewController时,当前界面正常消失,后面的界面正常出现

 

可以通用的类的设计技巧

如果一个界面可以用来共用,比如table用来选择,则可以在点击确定按钮的执行方法中或点击每一个行时,用代理方法,将由此类获得的数据传递出去,具体要怎么处理则由实现这个代理的类去做。

 

 

关于JSON

1、Json格式如果数据是很长的文字,那么文字中不能有空白、换行等,否则getJson和ajax都不会执行。

2、以后用CJSONDeserializer.hCJSONDeserializer.h解析Json数据时,如果出现Failed to scan a value,一定是json字符串的格式有问题,一定仔细检查。

 

时间戳

时间戳,即距离1970年1月1日的秒数,到目前为止是一个10位的整数,用NSUInteger转换就行了。

 

UIWebView与JS交互

1、如果想要在html已加载的时候就给某个变量赋值,可以在(void)webViewDidFinishLoad:(UIWebView*)webView1//加载完成 中进行处理。

2、如果加载本地的html,里面的js突然不执行了,很大可能就是js代码由于之前的改动,出现了错误。

 

IOS 数组

1、如果输出结果为这样的(

   imglist

)说明这个一个二维数组。

 

关于Itunes Connect上传

1、itunes connect不能轻易删除已经创建的APP,否则这个APP的已填信息都不能在使用了,以后要记住在删除东西之前要确保没有问题,不能轻易执行删除操作!!!!

 

HTTP请求

1、Content-type

Content-Type指定要求的那个文件的类型是什么,对于正常的HTTP Post请求,需指定[request setValue:@"application/x-www-form-urlencoded"forHTTPHeaderField:@"Content-Type"];

3、在HTTP POST中传递参数时,如果是中文要转成unicode。

4、ASIHTTPRequest中,[request setResponseEncoding:NSUTF8StringEncoding];如果接收到的是乱码则这样设置不管用,直接改它里面的返回数据的编码。

 

IOS 字符串

1、NSString的stringByAppendingString方法是将拼接后的字符串返回,所以一定要让原来的等于才行,如 NSString *str = @””;

str =[str stringByAppendingString];

 

关于XCode设置

1、开启调试exc_bad_access

在xcode中设置的步骤:

product->Scheme->Editor Scheme。

原文地址:https://www.cnblogs.com/xubojoy/p/3885939.html