新闻阅读器项目主要实现的功能有:广告页,新闻详情页,栏目的切换,天气,微信分享,友盟统计等。
效果图如下:
主要内容有:
1.点击栏目条切换新闻列表,滑动列表,栏目条相应改变
这个功能的实现主要是通过在scrollview中添加三个tablveiw来实现(也可以通过自定制一个横向tablview来实现),当scrollview滑动时,通过代理向栏目条做出相应改变,从视图可看出栏目条也是一个scrollview,通过设置它的偏移量促使它发生改变。同样,点击栏目条也是通过代理来改变新闻列表的偏移量。
2.用html模版实现新闻详情页面,这个在html上有总结,替换标签,相对简单。
3.通过抓包工具获得手机上网易新闻的新闻api,我用的抓包工具是charles,简单实用,功能强大。由于网上提供的新闻api都有请求次数限制,在调试程序时发送多次请求后,就不返回数据,而抓包工具在进行网络测试时,请求次数相对没有太多限制。
4.在做这个项目时,当请求的图片数据过多时,就会使的tableview非常的卡,使用起来非常的不方便,因此,解决的办法是通过第三方类库SDWebImage来显示image视图,并对图片进行缓存,不得不说SDWebImage是一个非常神奇的第三方框架。
5.添加视图下方的uitabbarcontroller时,通过plist文件进行对viewcontroller进行管理,在修改和添加viewcontroller的图片,标题,显示等都很方便。具体使用在plist管理uitabbarcontroller中有详细说明。
6.广告页面的实现是通过在显示主视图前,通过一个延迟方法(各类延时有总结)来,在固定时间过后,让广告页面消失。
7.最后,通过微信官方的sdk和友盟的sdk实现微信分享,app使用状况统计,还有当天天气的显示。
8.这个项目还未完全完成,带修改。。。。