IOS开发总结
来源:互联网 发布:网络信息安全组制定 编辑:程序博客网 时间:2024/06/05 19:01
IOS开发总结:
1、搞清楚生命周期,didFinishLauch-->init-->loadView-->viewDidLoad-->.....
2、搞清楚视图、视图控制器、导航栏、底部TabBar之间的关系:一般是TabBar里面装导航栏,导航栏再装视图控制器,视图控制器再装视图。导航栏、底部tabBar实例的生成一般是在AppDelegate.m文件中定义。设置window的rootViewController为底部tabbar,底部tabbar装载了若干个导航栏,导航栏也是一个容器,装载了视图,push视图的时候,视图一个个入栈,pop的时候出栈。
3、在导航栏设置背景的时候,要注意不同版本的方法是不一样的,5.0一下的是通过draw方法来设置的,而5.0后可以直接调用setBackgroundImage方法。所以程序应该先判断版本的高低,可以用respondTo来判断是否相应这些方法,响应的话就会自动调用这些方法。
4、IOS5.0版本以下,在设置导航条的背景、标题、按钮的时候,系统没有提供方法让我们改,给导航条设置标题只能自定义一个UILabel,让self.navigatiomItem.titleView设置为自定义的label。同理返回按钮也是要通过自定义按钮,然后加在navigationItem.leftBarButtomItem上的。像导航栏的修改的这些代码一般放在对应的viewController中的viewDidLoad或者viewWillAppear方法中,也可以放在pushViewController方法前面,但是这样就往往放在其他类中,造成A类的事在B类中完成,不太好。
5、tabBar的设置也一样,5.0以前的若要改变barButton,可能往往需要自己做一个透明的Button上去。
6、viewController中的视图不要只用一个类来完成,要看能否抽出可重用的东西来,可以的话定义成一个类,便于重复利用。
7、关于代码框架:(1)在视图类中,子视图、控件的实例化,空间的分配最好写在setter方法中,而不要全部放在init**方法里面。一般是将控件定义为readonly的property属性,重写他们的getter方法,在getter方法里面来完成初始化工作。(2)视图类一般只完成视图控件空间、位置的定义和初始化工作,而数据的设置一般是放在viewController中来完成。(3)
8、设置synthesize listItems = _listItems,当调用self.listItem的时候,也就会去调用listItem的getter方法。
9、对于控件大小、位置,都应该用宏定义来标识,不然修改很麻烦。
10、做项目之前应该先构思项目的框架,由面向对象的思想来构思,界面总共由几个对象构成,要写几个类。类之间的数据如何传送等。构思完了再开始写,这样就不乱。类要遵循单一职责,一个类只干一件事。
- 【iOS开发】iOS知识点总结
- ios 开发总结
- iOS新手开发总结
- IOS开发总结
- ios开发总结
- iOS 开发总结
- iOS开发流程总结
- iOS开发流程总结
- iOS开发流程总结
- iOS开发流程总结
- iOS开发流程总结
- iOS开发流程总结
- ios开发总结
- ios开发总结2
- iOS开发流程总结
- iOS开发流程总结
- iOS UIView开发总结
- iOS开发流程总结
- 代理模式
- 诗歌rails之 关于Rails的错误提示 Rails flash error
- 解决source insight不识别.cc文件的问题
- codeforces 141E clearing up
- 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup
- IOS开发总结
- S/N C/N Eb/N0
- 图像偏色检测算法,速度快,效果好,共享给大家。
- 给Ubuntu 13.04换源 软件源、更新源
- 【转载】myeclipse10.0优化
- 数组的基本用法(2)——数组元素的地址
- POJ 1523 SPF
- 我对adaboost的一点理解
- Cocos2d-x中的CCScrollView的使用