iPad总结

1. 在button中加入图片并设置文字,默认图片在左边,文字在右边。(故事板)


2. cocoapods 出现invalid+byte+sequence+in+UTF-8 这种错误:

将podfile中的注释中文删除。


3. 高德地图使用2.4.0(含)之后版本的SDK,需在info.plist中追加NSLocationWhenInUseUsageDescription或NSLocationAlwaysUsageDescription字段,以申请相应的权限。


4. autolayout 动画:这个约束加到哪个view上,就由这个[view layoutIfNeeded];

不能用子view来 layoutIfNeeded。 不然没效果。

往控件上手动添加约束,不会立刻改变它的frame,则可用[self.viewlayoutIfNeeded]; 立刻改变它的frame。


5. 如何从xib加载控制器:

news2ViewController*viewcontroller = [[news2ViewControlleralloc]initWithNibName:@"news2ViewController"bundle:nil];


6.关于初始化NSDictionary的坑:字典里面的value可能为nil会报错--[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to inser nil object from objects[0]。

解决办法NSDictionary初始化的坑 - 推酷

//value:key这种标准化的字典生成方式不会出错!

NSDictionary*attribute = [NSDictionary dictionaryWithObjectsAndKeys:self.article.font,NSFontAttributeName,nil];


7. //切记改变了约束以后要立马下一句,这样会刷新约束,否则原来的frame不会改变

[self.articlelayoutIfNeeded];


8. scrollview的竖直范围是指:子视图离scrollview的bottom的距离,所以设定30即可,不用在程序中做随时更改。


9. this class is not key value coding-compliant for the key send.'

xib连线出错。


10. textView 换行符:\r\n


11. Impossible to set up layout with view hierarchy unprepared for constraint.这个错误是由于view1与view2同为scrollview里面的子视图,想用约束建立他们之间的关系,然而,view1是在SB中往scrollview中添加的,在SB上面给scrollview添加的子视图却没有加入到scrollview的视图层次关系中所以才会报没有添加层次关系的错。

改正方法,在viewDidload方法中把这句话[self.scrollview addsubview:view1];放在添加view2之间。


12. 如果viewController或视图A从xib加载,那么在它的viewDidLoad方法中不能[NSBundle mainBundle] load... 它自己了。

viewDidLoad方法是在 先加载了xib中所有的视图(即创建他们并构建层级关系),然后才调用viewDidLoad方法。


13. 约束是有identifier可以唯一识别的。这样就不用拖线了。。。


14. 关于initWithCoder方法只会初始化自己,此时故事板上的子视图也没有被初始化,self与原来的子视图更没有建立起层级关系,因此只能往self上添加子视图,并建立self和新子视图的层次关系。

awakeFromNib相当于viewDidLoad,所有层级关系已经建立。

updateConstraints方法一定要调用super。。。。

如果使用纯代码写,则init方法里面可以设置self子视图与子视图之间的层次关系(即上述规则不成立)。

注:用init生成view 不会执行awakeFromNib。


15. 给xib文件添加手势,会出现手势不响应的情况。原因是:xib的加载方法loadNibName 中owner要设为self。


16. 发通知的优点:不受view的层级限制。



17. terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "shipinView" nib but the view outlet was not set

出现这种错误的原因是:

我在创建shipinViewController的时候,控制器加载view,会先去shipinView.xib找,然而我真的有个文件叫shipinView.xib,而这个xib不是我想要的控制器的view,xcode以为他是,所以就报 nib but the view outlet was not set的错误。没有把控制器的view和xib的view关联起来。
所以,给view命名xib时候,不要带view。


18. 屏幕旋转:
本控制器及其子控制器能不能旋转

- (BOOL)shouldAutorotate{

returnYES;

}

本控制器及其子控制的旋转方向

- (UIInterfaceOrientationMask)supportedInterfaceOrientations{

return(UIInterfaceOrientationMaskLandscapeLeft|UIInterfaceOrientationMaskLandscapeRight);

}

屏幕旋转是:如果在info.plist文件中设置了几个方向,那么控制器只能在那几个方向旋转或者不旋转;但是没有开通的方向是一定不能在VC中用代码开通的。


19. 使用block会出由于层次过于复杂,导致不能拿到对应的VC。

解决办法:1. 用通知 2. 在创建下一层级的view时,view创建一个属性,这个属性用来指示上层级的VC。这样VC就保留倒了下一个层级。


20. navigationItem 中的UIBarButtonItem的image 要取消渲染才能显示。

点击图片,右边设置有render As ,选择 original image。


21. pickerView的reloadComponent刷新不了。原因是自己把代码写错了:

我写成了self.pickerView = picker; 由于picker是全局指针,应该写成:picker = self.pickerView;由于全局变量指针没有指向pickerView,所以导致,pickerView调用reloadComponent方法,不能刷新页面。
另外:reload这个方法,会优先调用ViewForRow,其次才是titleForRow。这两个方法只调用一个。


21. 只有在viewDidAppear这个方法里面,self.view的frame才是正确的。


22. 由于在viewWillAppear中没写super viewWillAppear 导致,这里面的方法调用失败。同理viewDidAppear也要调用super的方法。


23. 由于没有创建model,只是self.model来接数据是不对的。我们用惯了故事板连线形成的属性,不用alloc是因为在故事板中已经存在了。而model是NSObject,我们要先创建它,指针才有意义。否则为nil。


24. 解决scrollView上的按钮点击响应延迟的问题:

scrollview上添加button,会使得button响应延迟。解决办法:

self.scrollView.delaysContentTouches = NO;


25. 关于字典


下面2个方法只能由NSMutableDictionary 应用。

1. setValue:forKey:只接受NSString*类型的key

2. setValue:forKey:当value为nil时,将调用removeObjectForKey:


26. 如何设置颜色的RGB

[UIColor colorWithRed:(CGFloat)154/255 green:(CGFloat)205/255 blue:(CGFloat)50/255 alpha:0.8];

154/255 RGB值要除以255,并且是CGFloat型。


27. 描述文件路径

~/Library/MobileDevice/Provisioning Profiles


28. SB中的use standard value 和use Canvas Value

前者指默认距离。

后者指当前两条边的实际距离。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,132评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,802评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,566评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,858评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,867评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,695评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,064评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,705评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,915评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,677评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,796评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,432评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,041评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,992评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,223评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,185评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,535评论 2 343

推荐阅读更多精彩内容