WOTPlus(5) - 开发_3

运交华盖欲何求?未敢翻身已碰头。  破帽遮颜过闹市,漏船载酒泛中流。  横眉冷对千夫指,俯首甘为孺子牛。  躲进小楼成一统,管他冬夏与春秋。

承上启下

写到这里,就剩下一个功能了,那就是 战车 了;

战车页面

关于战车页面的设计与数据提取;
先来提取数据,看看获取的数据都有什么;然后再定页面的展示;
初步的规划是三个级联页面;

前两个页面,也就是 战车类型列表各类型战车列表 的数据在之前的html中,仍然使用jsoup进行提取,比提取到对应的抽象类 Tanks,这个地方也比较复杂,代码比较多,我也不贴了,可以去源码中的工具类中去看;
第三个页面 战车战绩信息 的数据是没有,继续抓请求,发现点击某个战车的时候回发出一个 json 请求,这就好办了;

类似下面的请求,需要参数acount_id和vehicle_cd:
http://ncw.worldoftanks.cn/zh-cn/community/accounts/1509154099/vehicle_details/?vehicle_cd=305

返回的 json 包括该战车的成就list,和其他的战绩信息;

**一些技术细节: **

第一个 战车类型列表 页面使用的是 TanksFragment 填充主页的空白,后两个则是使用的新的 Activity 来实现的,分别为:AtyTanksAtyTank
AtyTanks 中根据 TANKS_TYPE 来判断展示的坦克类型名称,名称使用了一个数组来存储:String[] TANKS_TITLE = {"LT", "MT", "HT", "TD", "SPG"},顺序与列表的点击 position 对应;
AtyTanks 的页面文件 activity_tanks 中使用了 CollapsingToolbarLayout ,其中添加了一个代表各类型的坦克图片,我选的德系比较多,,,谁让我是个德粉呢!
AtyTank 的页面文件 activity_tank 中的上半部分使用了 NestedScrollView 嵌套 CardView 再嵌套 RecyclerView 的方式,在可上下滚动的Card里实现了成就列表的左右滚动;

其他的一些 逻辑处理 ,如:国旗的处理、坦克成就的图片url拼接、提取勋章的ID与名称对照字段map(坦克成就json中没有成就名字汉字,于是拼装了一个中英文对照的map,此map用于以英文为id提取中文从而设置成就名称)等,不再详细描述,具体可参见代码;

战车类型列表 图:

各类型战车列表 图:

坦克详细战绩页面 图:

两个问题

1、上滑时toolbar只隐藏一半的问题

错误图:

参照 toolbar的使用

原因:在 CoordinatorLayout 中多了下面这个属性:
android:fitsSystemWindows="true"

2、网络请求又出问题了,,,不返回jsonobj

去掉好多header后可以获取到String,header还是不要乱加,够用就好;

后记

核心功能基本完成,下一步开发APP的基础功能:设置、关于;
主要的功能点:版本更新、缓存清除等;

明明还有好多要干的,可是不知从何下手了;

2016年5月15日16:12:23 by zhang.xx

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,120评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,328评论 25 709
  • 今天早上八点半来到公司,我向往常那样打开微信朋友圈刷一刷,一件令人匪夷所思的事情发生了…… 我相信,每个起床之后睁...
    荔枝小梦阅读 2,732评论 0 1
  • 什么是过敏? 过敏是免疫系统对环境中本来无害的物质所产生的,一种不恰当的和过度的免疫反应。重点词是:无害的物质,不...
    麦子育儿说阅读 3,848评论 0 3

友情链接更多精彩内容