新浪微博ios客户端 开发流程

1. 首先 自定义AppDelegate

(1).if:第一次登录此版本 :新特性展示—> OAuth页面 获取accessToken —> 主界面

并且保存 账号信息 与access token ,by:单例模式。

else: if:如果未通过OAuth授权(即单例模式类中没有账户信息)就进入OAuth页面 —>  主界面

else: 直接进入主页面 并读取单例中的信息 获取数据。

(2):新特性  scrollview  使用滚动视图以及 分页(UIPageControl) 并添加图片 将其分页  并在最后一页添加 进入 微博 分享微博的按钮。

2. 定义主界面结构

1). 实现下方的选项操作条

定义dock类 (操作条整体是一个View)与 DockItem(每一个操作条目都是一个按钮) DockController (UiViewController)

DockItem:重写内部imageView与label的frame使文字图片保持居中
位置合适

Dock: 设置整个View的frame 与 背景图片,以及每一个Item的位置以及大小,随着Item数量变化而改变, 并且监听每个item, 设置代理方法 当点击某个item时,会“自动”调用代理方法

DockController:向控制器添加一个dock并设置frame, 并实现dockDelegate中当按钮代理方法。代理方法作用:实现 点击item 跳转当前View

MainController (主控制器 继承自 Dock控制器), 通过来自父类的dock 添加item

2).自定义导航栏 (ios7 状态栏默认为透明 不占高度,出现问题)

3).定义五个TableView类,每个view都被导航控制器包裹,添加到主控制器

------ 此时大体框架以及搭建完毕,可以切换到不同页面--------------

3.设计 更多(客户端设置) 模块。 自定义tableview

自定义tableView子类, 采用group模式的table

------ 开始主要功能编写---------------------------

4.设计home即微博部分  查看微博

1)设置初始ui界面

2)重写table方法numberOfRowsInSection每组有几行,cell数量 即获取的微博条数

cellForRowAtIndexPath  每行的cell 初始化--操作等 By:StatusCell

heightForRowAtIndexPath
每行cell的高度设置 通过微博具体内容 计算 by:statusCellFrame

3)获取微博数据

首先 封装 自己的工具类 ,HttpTool  通过自己封装好的类获取资源 而不是直接使用AFNetworking

这样可以降低藕合度,

status代表的是一条微博的各种属性, 自定义一个StatusTool 通过OAuth授权的accessToken来获取微博数据, 在控制器中调用tool中方法 获取微博数据 存入数组中 。 并通过自定义 的StatusCellFrame类(计算微博中个部分以及整体的frame )得到frame
存入相应数组中  用来设置cell高度

最后通过StatusCell来展示微博。

未完待续。。。。。

时间: 2024-10-08 18:05:37

新浪微博ios客户端 开发流程的相关文章

iOS客户端开发流程

客户端项目流程: 1)产品经理做需求调研,确定产品需求,编写需求文档 2)产品人员完成产品原型 3)产品经理召开会议(产品.UI.UE.开发.服务器) 4) 设计人员根据原型设计出一系列UI界面.用户交互体验制定 5) 服务器与客户端成员一起制定接口文档 6)项目经理制定项目开发进度,分配任务,估算开发周期 7) 移动客户端开发人员根据UI界面和需求文档开始编写代码,开发模块上的功能 8) 开发者提交测试 9) 测试部分完毕,提交产品经理,验收产品 10) 提交appstore上线 开发流程:

20个可以帮你简化iOS app开发流程的工具

这里推荐20个可以帮你简化iOS app开发流程的工具.很多开发者都使用过这些工具,涉及原型和设计.编程.测试以及最后的营销,基本上涵盖了整个开发过程. 原型和设计 有了一个很好的创意后,你要做的不是立刻编程,而是设计UI和创建原型,这样你才能知道app如何运行,根据用户体验需要做哪些调整. App Cooker AppCooker 不仅是一个创建原型的优秀工具,它提供的许多功能还可以帮助你将程序发布到App store中.它集成了Dropbox,Box.net和photo roll,你可以直接

仿新浪微博IOS客户端(v5.2.8)——自定义UITabBar替换系统默认的(添加“+”号按钮)

转载请标明出处:http://blog.csdn.net/android_ls/article/details/45896395 声明:仿新浪微博项目,所用所有图片资源都来源于官方新浪微博IOS客户端,编写本应用的目的在于学习交流,如涉及侵权请告知,我会及时换掉用到的相关图片. 自定义UITabBar替换系统默认的,目的是为了在UITabBar中间位置添加一个"+号按钮",下面我们来聊聊具体的实现. 1.自定义WBTabBar,让其继承自UITabBar,代码如下: // // WBT

仿新浪微博IOS客户端(v5.2.8)——下拉菜单栏的实现

转载请标明出处:http://blog.csdn.net/android_ls/article/details/45877983 声明:仿新浪微博项目,所用所有图片资源都来源于官方新浪微博IOS客户端,编写本应用的目的在于学习交流,如涉及侵权请告知,我会及时换掉用到的相关图片. 接着上一篇博文,这篇我们来聊聊新浪微博导航栏上,点击中间部分的标题(titleView)弹出的下拉菜单是如何实现. 1.自定义导航栏中间的titleView,代码如下: // 设置导航栏中间的titleView _tit

仿新浪微博IOS客户端(v5.2.8)——设置导航栏外观

转载请标明出处:http://blog.csdn.net/android_ls/article/details/45849447 声明:仿新浪微博项目,所用所有图片资源都来源于官方新浪微博IOS客户端,编写本应用的目的在于学习交流,如涉及侵权请告知,我会及时换掉用到的相关图片. 一. 在Xcode6下添加.pch文件 对于使用惯了之前版本Xcode的朋友来说,在系统提醒之下升级到Xcode 6之后,发现新建项目后Xcode不再帮我们创建.pch文件了.可是我们已经习惯了,把一些在很多地方都用的宏

iOS客户端开发与Web前端开发

转载自:http://blog.cnbang.net/tech/1813/不知不觉做iOS客户端开发已经半年多了,了解到iOS客户端开发与Web前端开发的一些异同,写一下. 版本升级.用户角度上看,客户端升级必须让用户手动下载整个新的安装包覆盖安装,而web的升级无需用户做任何事情.开发角度上看,如果客户端有个小bug需要紧急修复,需要修复完后打包一个完成的安装包,给一个版本号,发布给用户升级.而web只需要修改后台的某些文件,然后传到自己的服务器,用多快速的迭代开发方式都没问题.web没有版本

仿新浪微博IOS客户端(v5.2.8)——搭建项目基本框架

转载请标明出处:http://blog.csdn.net/android_ls/article/details/45827719 声明:仿新浪微博项目,所用所有图片资源都来源于官方新浪微博IOS客户端,编写本应用的目的在于学习交流,如涉及侵权请告知,我会及时换掉用到的相关图片. 最近我打算利用业余时间,仿下新浪微博IOS客户端,至于能写到哪里我也不确定,能写多少就写多少吧,下面我们开始项目的基本搭建: 1.打开Xcode选择创建新项目,并创建各个模块的目录结构,完成后项目的目录结构如下图: 2.

新浪微博iOS客户端架构与优化之路

随着Facebook.Twitter.微博的崛起,向UGC.PGC.OGC,自媒体提供平台的内 容消费型App逐渐形成了独特的客户端架构模式.与电商和通讯工具类App不同,微博客户端具有多信息流.内容丰富多样.对数据量和延迟敏感等特点.微博的信息流承载着文字.网页.照片.视频.直播等多样的内容形式,所以复杂信息流对团队的开发效率.App的性能都带来了极大的挑战. 2016年6月24-25日,GMTC全球移动技术大会将在北京举行.本届大会,我们邀请到了新浪微博移动端资深研发专家邱晨老师.曾就职于F

Apple iOS MDM开发流程

一年前曾参与过中石油的一个移动平台项目,实现了通过MDM对iOS设备进行管理.由于苹果对于mdm这块的接口及开发流程只向几个合作伙伴进行了分享,并没有对具体实现的文档进行公开,所以这方面的资料非常少.现在把实现的过程分享给大家,希望能对大家有所帮助. MDM介绍 MDM的全称是Mobile Device Management,是企业IT 向移动互联网过渡的平台技术,帮助企业将IT管理能力从传统的 PC 延伸到移动设备甚至 移动应用APP . MDM主要可以实现以下功能: 保证设备安全:远程锁定设