新闻客户端文档.doc.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
案例:新闻客户端 1、案例分析 新闻客户端案例共有四个界面,分别是传智新闻、传智吧、知道和传智图库。点击新闻页面条目可以进入子页面。 新闻客户端案例使用百度提供的接口获取百度数据。具有HttpPost获取网络数据、使用JSON解析、Fragment页面、AsyncTask异步加载图片、Handler、Listview展示界面,上拉获取更多数据等功能。该案例是一个综合性较为全面的应用,通过该案例的学习可以对基础只是做一个总结并掌握更深的知识。 2、案例展示 案例主界面MainActivity继承自Activity,相对应的布局文件为activity_main.xml。布局文件有两大模块,上方为一个RadioGroup包裹四个RadioButton,分别对应四个页面,点击RadioButton跳转不同界面,下方为FrameLayout用于展示详细信息。MainActivity的布局界面如下所示: 应用启动时显示欢迎界面,由Handler.postDelayde()实现,欢迎界面显示两秒钟后自动关闭并跳转至MainActivity界面: MainActivity同时加载四个Fragment页面,默认显示第一个Fragment新闻界面。由于数据是联网获取的,在获取到数据之前界面中会先显示一个ProgressBar,当数据加载完毕之后会使用Listview加载各个页面: 当数据加载完成后,点击不同按钮会加载不同页面: 新闻页面 贴吧页面 知道页面 图片页面 新闻页面默认显示20条数据,贴吧页面默认显示50条数据,知道页面默认显示10条数据,图片页面默认显示30条数据。当位于页面最下方再往上拉时会再次加载相同数量的数据: 在新闻页面点击任意条目会跳转到新闻详细页面NewsDetailsActivity,该Activity由WebView进行展示新闻信息,并实现OnTouchListener接口,当在子页面时手指在屏幕横向滑动时会关闭NewsDetailsActivity回到上级页面。 在MainActivity界面按返回键时会提示再按一次退出应用,使用Handler实现该功能: 3、数据加载流程 下图为项目所用到的所有类: 应用启动时四个Fragment会同时向网络请求数据,每一个页面请求数据的过程如下: 欢迎界面 WelcomeActivity.java 应用启动的入口,只加载一张图片,这里的作用是实际开发中放入广告所准备。WelcomeActivity的onCreate()中创建一个Handler对象,使用Handler对象的postDelayed方法使界面延迟两秒钟后自动关闭并跳转至MainActivity界面。 新闻界面 News.java——新闻界面的javabean对象 NetUtil.Java——网络工具操作类 NetService. Java——通过url请求得到JSON数据 GetNewsService. Java——展示新闻界面的fragment FragmentNews. Java——在界面上展示数据 NewsListViewAdapter. Java——新闻界面ListView的adapter NewsDetailsActivity. Java——新闻界面的子界面,详细新闻信息 新闻界面会创建一个AsyncTask对象异步获取数据。使用NetService类的getJsonObjectsByUrl()方法调用网络操作工具类NetUtil.postAndGetDaet()得到新闻信息的JSON数据。GetNewsService的getNewsByPage()方法解析得到的JSON数据得到新闻列表数据并把数据封装为News对象,最后把得到的新闻列表数据返回给FragmentNews的ListNews,当ListNews得到数据后,会调用ListView的adapter. notifyDataSetChanged()刷新界面把数据填充到界面中进行展示。 由于新闻界面有可能获取到图片url信息,当ListView加载数据时如果有图片Url则新创建一个AsyncTask对象,将url作为参数使用HttpURLConnection对象向网络获取到url对应的图片并转化为Bitmap对象,将Bitmap对象返回给ListView的adapter加载到界面中。 当点击新闻列表某一个条目时会跳转到详细信息界面NewsDetailsActivity类,NewsDetailsActivity是以webview形式把新闻详细信息数据展示在界面上,NewsDetailsActivity实现了OnTouchListener接口,当在屏幕上横

文档评论(0)

170****0532 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8015033021000003

1亿VIP精品文档

相关文档