美文网首页WOTPlus
WOTPlus(5) - 开发_3

WOTPlus(5) - 开发_3

作者: 康恩饭 | 来源:发表于2016-05-15 16:30 被阅读0次

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

    承上启下

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

    战车页面

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

    前两个页面,也就是 战车类型列表各类型战车列表 的数据在之前的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

    相关文章

      网友评论

        本文标题:WOTPlus(5) - 开发_3

        本文链接:https://www.haomeiwen.com/subject/xxmvrttx.html