手把手教你如何搭建iOS项目基本框架

  • 格式:docx
  • 大小:29.24 KB
  • 文档页数:18

下载文档原格式

  / 18
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

今天我们来谈谈如何搭建框架,框架需要做一些什么。

第一步:找到我们的目标

我们的目标是让其他开发人员拿到手后即可写页面,不再需要考虑其他的问题。第二步:我们需要做哪些东西

假定我们即将要写的项目是一个tabbar+navgation的项目结构。

1. 新建工程

1.1 删除不必要类目

选择Single ViewApplication,命名为HomeHome。删除选中的三项。

1.2 修改info.plist

1.删除info.plist main.storyboard字段

2.添加字段

info.plist 中添加以下

Bundle display name --- 对应应用名

开启http访问,不添加该字段导致不能访问http,只能访问https。

3.添加应用白名单

iOS9之后分享等必须添加白名单后才可以打开相关应用。字段值为LSApplicationQueriesSchemes

4. 添加URL Types

用于分享到QQ,微信等平台或者打开支付宝等,已经设置当前APP的Url shesmes

1.3 修改项目配置

关闭bitCode

build setting中搜索bitCode 改为NO

2.配置项目

2.1 建立目录

2.2 拖入各大依赖库

我在这里主要依赖了以下库:

∙AFNetWorking 网络请求

∙SDWebImage 图片加载

∙MWPhotoBrowser 图片浏览器

∙MJRefresh 刷新加载控件

∙RDVTabBarController 一个很好用的tabbar控件∙MBProgressHUD 菊花转圈

∙NJKWebViewProgress webview的加载进度条∙Masonry 用于适配

2.3 依赖常用第三方服务

通常集成了:

∙友盟分享

∙极光推送

∙腾讯bugly

∙Mob验证码服务

3. 编写代码

3.1 建立pch

xcode6之后建立pch 参考该网址

3.2 建立Api.h文件

该声明文件用于查询接口等

3.3 建立Config.h文件

该声明文件用于编写某些全局配置参数

如以下:

#define kPushPhotoBrowserNotifitationName @"PushPhotoBrowser"

#define kPresentVideoPlayerNotifitationName @"playCallBackVideo"

#define APPICONIMAGE [UIImage imageNamed:[[[[NSBundle mainBundle] infoDictionary]

valueForKeyPath:@"CFBundleIcons.CFBundlePrimaryIcon.CFBundleIconFiles"] lastObject]]

#define APPNAME [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleDisplayName"]

#define Main_Color [UIColor colorWithRed:(3)/255.0 green:(160)/255.0

blue:(235)/255.0 alpha:1.0]

#define Main2_Color [UIColor colorWithRed:(135)/255.0 green:(202)/255.0 blue:(231)/255.0 alpha:1.0]

#define VTColor(r, g, b) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:1.0]

#define Text_Color [UIColor colorWithRed:(51)/255.0 green:(71)/255.0

blue:(113)/255.0 alpha:1.0]

#define BackGround_Color [UIColor colorWithRed:(235)/255.0 green:(235)/255.0 blue:(241)/255.0 alpha:1.0]

#define Default_Person_Image [UIImage imageNamed:@"default_parents"]

#define Default_General_Image [UIImage imageNamed:@"default_general"]

#define kScreenW [UIScreen mainScreen].bounds.size.width

#define kScreenH [UIScreen mainScreen].bounds.size.height

//以及各种第三方服务商的appId或者App key

3.4 开始编写项目结构

我们分别建立了3个AppDelegate的类别

∙HHAppDelegate+AppService //app的服务管理

∙HHAppDelegate+AppLifeCircle//app的生命周期管理

∙HHAppDelegate+RootController//app的跟视图控制器实例先看看HHAppDelegate+RootController

声明文件

/**

* 首次启动轮播图

*/

- (void)createLoadingScrollView;

/**

* tabbar实例

*/

- (void)setTabbarController;

/**

* window实例