iOS开发开源框架和类

移动开发 iOS
遇到bug或直接崩溃,如果报的是exc-bad-access那么意味着在之前已经将对象释放了,而确又在后面使用它,所以要往上逆推寻找。调bug几种常用方法,打断点一步一步寻找,打印,包括数据,引用计数,暂时屏蔽一部分代码,一部分一部分寻找。

使用的开源框架和类:

1:SDWebImage,UIImageView+WebCache加载一张图片。

2:UIViewExt用于定位坐标很有用,可以直接拿到bottom,top,left,right.

3:CustomCatagory,是个类目,里面有navigationBar和UINavigationController的两种系统版本下自定义navigationBar背景图片方法,用于自定义navigationBar背景图片。

4:UIUtils工具类,里面我写了四个方法,一个获取documents下的文件路径,一个将NSDate类型转化成字符串类型,一个将字符串转化成NSDate类型,还有一个将传进来的一个评分字符串分割开成两个,放在数组中,用于显示两个不同字体类型的评分。

5:CONSTS常量类,里面存放的是整个项目中需要使用的常量,写成宏形式。

6:UIFactory里面自定义了button类型,两种常用button样式。

7:JSONKit类用于json数据解析

8:ASIHTTPRequest开源库,用于请求网络,需要依赖这五个系统自带库CFNetwork, SystemConfiguration, MobileCoreServices, 和 libz、libxml2。

9: DataSevrice网络请求类,分GET和POST请求两种方式,使用HTTP请求网络,使用ASIFormDataRequest类,需要一个url参数,当使用GET请求时候,不需要字典参数,增加一个请求头,当使用POST请求时候需要一个字典参数,通过键key发送值。ASIFormDataRequest对象使用block请求数据,判断版本,5.0以上使用ios5自带的json解析类NSJSONSerialization,5.0版本之下使用JSONKit类,请求之后,使用block回调。如果请求失败,返回请求失败。

10:转化成model对象类,将请求下来的网络数据字典转化成model对象。方便在其他类之间进行数据传输。

11:自定了一个单例类,将项目中需要在控制器之间传输的数据存储起来,方便调用。

12:使用OpenFlow开源框架,用于显示首页的图片要实现效果,在AFItemView类里面设置了高清和低清两种样式,实现里面三个代理方法,一个用于图片切换时改变,一个用于请求加载图片,通过_operationQueue创建一个线程来进行加载,因为如果都在主线程进行图片加载,可能会造成线程堵塞。

13:EGORefreshTableHeaderView用于上拉下拉刷新,实现里面的几个代理方法,当手指放开时候会去调用加载数据代理方法。

小技巧:

在Mtime-Prefix.pch里导入的类.h文件在整个项目中都可以使用。

在Mtime-Info.plist文件里可以更改stateBar样式,有三种。

在Localizations里可以跟改本地化,可以设置多种语言,在硬件里也要做相应设置。

按住option+command+run可以添加变量用于定位错误所在。

在项目中最好打开静态分析器,会提示那里有内存泄露,当然也不准确,一定要记得管理内存。

遇到bug或直接崩溃,如果报的是exc-bad-access那么意味着在之前已经将对象释放了,而确又在后面使用它,所以要往上逆推寻找。调bug几种常用方法,打断点一步一步寻找,打印,包括数据,引用计数,暂时屏蔽一部分代码,一部分一部分寻找。

责任编辑:闫佳明 来源: cnblogs
相关推荐

2011-08-18 11:10:49

Core Plot框架IOS开发

2014-05-13 10:12:17

iOS开发开源类库

2019-03-01 08:57:47

iOScoobjc协程

2016-03-18 09:36:13

ios基础框架

2014-04-21 15:53:59

iOS开源项目CocoaLumber

2019-09-02 14:51:33

2022-07-13 08:53:12

开源元宇宙

2015-06-24 10:17:24

UI流式布局

2011-06-15 16:11:51

UIKitCocoa TouchiOS

2009-07-03 16:05:06

JSP开发框架

2021-02-10 16:03:19

大数据开源框架

2011-08-17 14:20:21

IOS开发GraphicsCon

2012-02-01 09:59:05

TitaniumPhoneGapiOS

2021-08-13 08:24:35

Vue开源动态路由

2009-06-19 10:09:00

J2EE开发框架

2014-07-30 14:37:00

FacebookiOS开源库

2013-07-29 05:11:38

iOS开发iOS开发学习类的'生命周期'

2024-05-06 08:44:25

FrugalGPT大型语言模型LLM

2012-10-08 12:59:01

iOS 6.0开发框架功能更新

2011-08-18 11:19:13

IOS开发Core Plot S
点赞
收藏

51CTO技术栈公众号