基于Android问卷调查客户端题目分页加载实现.docVIP

基于Android问卷调查客户端题目分页加载实现.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Android问卷调查客户端题目分页加载实现

基于Android问卷调查客户端题目分页加载实现   摘 要:本文根据对Android问卷调查客户端问卷题目的分析的结果,设计出题目加载视图的布局,并对题目分页加载的实现提出了详细方案。 关键词:Android;问卷调查客户端;分页加载 中图分类号:TP311.52 1 基于Android的问卷调查客户端简介 基于Android的问卷调查系统由两个子系统构成,分别为基于Windows的问卷设计子系统和基于Android的调查客户端子系统。两端的问卷数据接口使用XML标准数据文件。基于Android的问卷调查客户端核心模块为问卷问题的分页加载。 2 问卷视图的布局分析 问题的加载用到多个视图布局的嵌套。questionActivity下的问题列表视图需要一个布局,问题列表视图下选择题的备选答案列表又需要一个布局,备选答案列表中答案项根据单选或多选又需要不同的答案项布局。列表嵌套布局如图1所示。 3 问题分页加载显示实现主流程 问卷问题分页加载显示程序实现主流程如下所述: (1)在questionActivity问卷界面类下将XML问卷数据解析到paper问卷对象中。 (2)questionActivity获得paper对象后调用GetPaperCount方法,根据问卷各问题的分页索引获取到问题分页总页数。 (3)当要加载显示某页对应的问题列表时,通过调用titleAdaper适配器对象的方法getPageQuestionList,传入当前页码获取到当前页的问题对象列表questionPageList。 (4)在questionActivity对应的问题列表视图适配器类titleAdapter继承自BaseAdapter适配器基类。在titleAdapter下重写getCount、getItem、getItemId、GetView系列方法,使getCount返回questionPageList列表的长度,getItem获取当前position的问题对象,getItemId返回当前position(位置)值。GetView方法在questionActivity对应的列表视图(ListView)对象的请求下每次自动得到一个position的问题的视图。如果问题列表questionPageList长度为N,则GetView被自动请求N次获得questionPageList列表的所有问题视图给questionActivity视图对象。 4 分页计算 GetPaperCount方法用于根据问卷对象paper下的问题列表各问题的分页索引index计算总页数。根据用户需求,问题列表各问题在哪一页,由问卷设计员设计问卷时来设置。假设某问题在第N页,分页索引应该设置为(N-1)×100到(N-1)×200-1之内。比如某问题在第2页,其索引值应为100到199之间的值。 由此可见,GetPaperCount方法获取总页数算法实现流程如下所述: (1)设置最大索引变量maxIndex,初始化为0。并循环遍历paper问卷对象下的问题列表,获取所有问题的最大索引值到maxIndex。 (2)遍历结束后,计算总页数为:count=(int)(maxIndex/100)+1。 5 根据当前页码获取问题列表 getPageQuestionList方法用于根据当前页码获取问题列表。本方法根据传入的页码计算出问题的对应的索引范围,遍历paper对象问题列表的所有问题,获取到问题分页索引处于该索引范围的问题对象并添加到分页问题列表questionPageList中。 questionActivity对应的问题列表视图数据适配器类titleAdapter中的GetView方法的运行机制在前面已经做过叙述。GetView方法单次获取问题对象视图实现流程如下所述: (1)GetView方法得到questionActivity问题列表视图quelist一次视图请求即获取到请求位置position。 (2)获取分页问题列表questionPageList当前position下的问题对象question。 (3)从单个问题显示的布局文件question_item.xml中获取用于显示问题内容的TextView对象txtTitle和用于显示选择题备选答案列表或问答题文本编辑框的ListView对象lvChecks。 (4)获取question对象的_qTitle(问题标题)字段的值加载到txtTitle。 (5)获取question对象的_qType(问题类型)字段并判断。如果_qType为单选题,则为备选答案视图对象lvChe

文档评论(0)

docman126 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:7042123103000003

1亿VIP精品文档

相关文档