2:每次在运行xcode在真机上,或者archive打包的时间,都会弹出输入用户名和密码的框.
解决方法:
打开钥匙串访问,在“系统”中双击小钥匙。
3:在使用XIB作为view的加载项时,会出现
SimpleTable3[29418:11303] *** Terminating app due to uncaught exception ‘NSInternalInconsistencyException’, reason: ‘-[UIViewController _loadViewFromNibNamed:bundle:] loaded the “SimpleTableViewController” nib but the view outlet was not set.’
很简单,时命名问题,view的名字和ViewController的名字太像,(HKViewController / HKView),以至于xCode认为是相关联的,只要把View名字换掉就可以。
4:ViewController从Xib加载后,在代码中修改Frame无反应
解决方法查看xib里view是不是设置了自动布局 use auto layout。取消掉就可以了。 其中子视图AutoSizing的内部十字架全部取消,否则会变形.
5:icon图标取消高亮,解决在ios6下icon颜色变淡的问题
Supporting Files中的plist中在Information Property List和Icon files(iOS5)中的Primary Icon目录下添加
icon already includes gloss effects = YES;
6: tabbar会有默认的选中蓝色,无论是否设置选中为选中图片,都会有
解决办法 tabBar setSelectedImageTintColor:选中的颜色色值
7:Block两点注意:
1.block 的循环引用(retain cycle)
2.去除block产生的告警时,需注意问题。
非ARC:在Block中访问自身的属性,会retain自身造成内存泄漏,解决这种循环引用问题。就是在变量前面加个__block。
ARC:不是简单的在变量前面加个__weak,这时还会告警,说这是一个WEAK变量,就马上会被release。因此还未到执行block中的内容就已经被释放,解决这种循环引用问题 方法:__weak typeof(CustomCell) *weakCell = cell;
8: 支持HTTP请求:
iOS9引入了新特性App Transport Security (ATS)。
新特性要求App内访问的网络必须使用HTTPS协议。
但是现在很多项目使用的是HTTP协议,现在也不能马上改成HTTPS协议传输,解决办法:
Xcode7:在Info.plist
中add Row添加NSAppTransportSecurity
类型Dictionary
。
在NSAppTransportSecurity
下添加NSAllowsArbitraryLoads
类型Boolean
,值设为YES
Xcode7.1中苹果更改了这项设定的名称
在App Transport Security Settings
下添加Allows Arbitrary Loads
类型Boolean
,值设为YES
持续更新中..........
9:UITabbar选中某个item是的图片设置问题
原始设置方法(These methods are now deprecated. Please use -initWithTitle:image:selectedImage:.) :
- (void)setFinishedSelectedImage:(nullableUIImage *)selectedImage withFinishedUnselectedImage:(nullableUIImage *)unselectedImage
替代方法:
- UIImage *musicImage = [UIImage imageNamed:@"music.png"];
- UIImage *musicImageSel = [UIImage imageNamed:@"musicSel.png"];
- musicImage = [musicImage imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
- musicImageSel = [musicImageSel imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
- self.musicViewController.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"Music" image:musicImage selectedImage:musicImageSel];
注意 iOS7界面中的一个重要改变.设置UIImage的渲染模式:UIImage.renderingMode重大改变,你可以设置一个UIImage在渲染时是否使用当前视图的Tint Color。 不加4和5项,导致选中图片无效果,要添加额外的代码才能生效。
10:一个View上面多个Button的点击事件互斥
解决方案: [button setExclusiveTouch:YES]
11: UIWebView修改加载页面的字体大小及其它属性
通过实现UIWebViewDelegate的- (void)webViewDidFinishLoad:(UIWebView *)webView来实现
- (void)webViewDidFinishLoad:(UIWebView *)webView { NSLog(@"webViewDidFinishLoad"); //字体大小 [webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName('body')[0].style.webkitTextSizeAdjust= '120%'"]; //字体颜色 [webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName('body')[0].style.webkitTextFillColor= 'gray'"]; //页面背景色 [webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName('body')[0].style.background='#2E2E2E'"]; }