回顾自己做过的项目,总结里面的知识点,分享自己参照WXHL的视频开发的一个模拟微博客户端的过程,为了还在IOS上找不到项目参考的朋友,这里会由一系列手把手的教程,如有不足,还希望可以抖抖小手,献上您宝贵的意见,交流交流经验! 注:本文适合已经学完OC基础和基本了解IOS大部分控件知识的读者阅读,如果还没有学习OC的UI控件的话,建议读者先花点时间去阅读教程 1)整体框架 如下图所示,这就是微博整个项目的框架结构图,其中DDMenuController是我们常用的能够左右滑动页面的开源类库,用法也…
前言 做一个微博客户端的第三方是自学的第一个实践的项目,自从从事iOS工作之后,就把这个项目给搁置了.趁现在过年回来有些空闲时间,再次修改(总觉得项目就是不停地修改).并且记录一点东西,以后可再回头看看从前走过的路,挖过的坑.这是一条微博的展示,不是整个项目. 废话不多说,先上效果图: 拆分控件 在开始动手写代码之前,我们得先确定怎么去实现这样子的布局,也就是分析需要用到哪些控件. 观察微博客户端,整体是可滑动的,而且界面展示比较规律的,所以应该是使用UITableView实现的.那么一条微博应…
在创建IOS项目时,若有一个比较明确的层级架构,将对于今后代码的维护或者功能的扩展很有帮助:本文将通过一个实例来展现我对于层级的一些观点:里面有一些零碎的知识点可能无法全部介绍,到时提供源代码进行下载,也希望有其它更好的观点可以提出来: 一:首先了解整个项目的情况 注意:项目中结合Pod进行一些第三方插件的管理,项目中已经把几个比较常用的第三方进行引用:因为上面几个都是比较常见的第三方插件,就不在这边详细介绍,关于如何使用Pod可以通过网上其它资料进行了解:对于如何一个项目创建多个Tag的知识也…
来源:http://bbs.9ria.com/thread-102038-1-1.html 上一章,我已经介绍了如果创建IOS库文件,并定义了两个方法ShowIconBadageNumber和InitNativeCode.好了.这一篇,我们主要来学习一下,如果创建Flex库项目.(小提示,要安装Flash Builder4.6的时候,要把以前的Flash BUilder4.5卸载,不然会造成安装不成功的.)1,打开安装好的Flash Builder 4.6 Prelease,创建一个Flex库项…
本文基于数据字典和数据流图两种工具讲述一个完整微博客户端的实现.数据字典和数据流图都可以用来表达线程的执行流程,同时定义了需要的类,是进一步设计类的基础. 数据字典实际上是一张表,表的第一个字段是程序代码中的标识符,其它字段具体描述它在线程中被如何使用,以及它所依赖的其它元素,数据字典中各个标识符基本上也是按照线程的执行流程来排序. 数据流图是一个平面拓扑结构,每个节点或者是外部数据,或者是可被线程执行的代码模块.从外部数据到代码模块的边意味着线程在执行代码模块的时候需要用到外部数据,从代码模块…
微博正文开发步骤总结 1.新建正文控制器,在点击首页的某一条微博时跳转过去 2.在MainController中设置导航控制器的代理,监听所有导航控制器的跳转 1> 如果即将显示的不是根控制器 * 将导航控制器view的高度拉长为屏幕的高度(不包括状态栏高度) * 添加Dock到跟控制器(目的是在切换控制器时,Dock能随着根控制器一起移动.注意设置Dock的y值,当根控制器view是UIScrollView时,要加上contentOffset的y值.) * 给即将显示的控制器添加左上角的返回按…
微博 Demo 性能优化技巧 我为了演示 YYKit 的功能,实现了微博和 Twitter 的 Demo,并为它们做了不少性能优化,下面就是优化时用到的一些技巧. 预排版 当获取到 API JSON 数据后,我会把每条 Cell 需要的数据都在后台线程计算并封装为一个布局对象 CellLayout.CellLayout 包含所有文本的 CoreText 排版结果.Cell 内部每个控件的高度.Cell 的整体高度.每个 CellLayout 的内存占用并不多,所以当生成后,可以全部缓存到内存,以…
首页显示微博列表,是微博的核心部分,这一章节,我们主要是显示出微博的列表. 导入第三方类库 pod 'SDWebImage', '~> 3.7.3' pod 'MJRefresh', '~> 2.4.12' pod 'MJExtension', '~> 2.5.14' 需求分析 由于Cell的高度是不一样的,因而采用自定义cell的方式来实现.具体实现思路,请参数之前的文章: iOS UI基础-9.2 UITableView 简单微博列表 代码实现 1.根据新浪微博的API文档,需要定义…
最近安装了12.04的ubuntu系统,在unbutu提供的软件中心找不到微博客户端的应用,但在新浪的http://sinatair.sinaapp.com/下找到了官方的客户端. 于是下载了linux版本的客户端,但发现安装过程并不是那么简单,因为是air程序,需要首先安装adobe的air运行程序,就是air的sdk. 网上能搜索到很多如何在unbutu下安装air程序的方案,基本上都是说直接运行.bin文件就可以了,但是都没有说明这是32位还是64位系统下安装的. 如果按照32位的方法去做…
最近研究oauth协议,为了进一步 的巩固自己的学习成果,顾完成了android的新浪客户端.他的架构如下: UI层微博中的各个窗体  就是所谓的各个activitylogic层程序的核心控制调度模块,获取UI传递的数据.要执行的任务,调用微博接口,获得网络数据,返回消息,刷新(切换)UI相当于mvc中的control,处理相应的业务逻辑. 微博接口层(新浪API已封装) 网络访问层(新浪API已封装)Dao层 数据库操作 以上都是mvc中的model,即使相应数据操作. 下面对logic层进行…