美文网首页
酷欧天气2.0(一)——查看多个城市的天气信息

酷欧天气2.0(一)——查看多个城市的天气信息

作者: 麦香菌 | 来源:发表于2018-03-04 18:40 被阅读0次

    开篇

    首先声明,小白一只,android完全自学,若代码中有不妥或更简便的方法求指教。。。

    寒假比较闲,就想着改改《第一行代码》的酷欧天气,主要是想实现添加多个城市,并通过左右滑动一一查看每个城市的天气信息,效果如下。


    酷欧天气2.0.gif

    刚开始做的时候想的比较简单,越写到后面越发现不简单,主要碰到以下几个问题:
    一、数据库的处理:因为要查看多个城市信息,所有需要一个数据库。为此碰到许多处理数据库的问题,譬如怎么删除某一行数据,怎么知道有多少行数据等等。
    二、动态添加控件:主要是用控件显示添加的城市。
    三、显示多个城市信息:想着用碎片显示城市信息,但不可能用一个碎片承载一个城市信息,那样的话得用多少碎片啊!我还想着创建碎片数组,也是天秀。

    第二三个问题我都写了小Demo进行了实验,第一个问题就得靠自己了:
    Android笔记——动态添加删除控件,及添加点击事件https://www.jianshu.com/p/659e4fe61ef5
    Android笔记——双碎片实现多个数据滑动显示https://www.jianshu.com/p/97e2ccf100ba

    先讲讲ChooseAreaActivity,WeatherAcitivity和WeatherAddActivity的关系:

    若用户第一次用该APP,将会进入ChooseAreaAcitivity添加第一个城市信息,再跳入WeatherActivity显示添加的城市天气信息。


    ChooseAreaAcitity.png

    若非第一次用则会直接跳过ChooseAreaAcitivty进入WeatherActivity。


    WeatherActivity.png

    点击WeatherActivity的添加按钮则会跳入WeatherAddActivity查看所有已添加的城市信息。


    WeatherAddActivity.png

    再点击WeatherAddActivity的添加按钮则会再进入ChooseAreaActivity选择要添加的城市。

    需存储的城市信息:

    private int id;
    private String CountyWeatherId;//城市ID,用于组成向网络获取信息的weatherUrl
    private String CountyWeather;//获取的未被解析的城市天气信息
    private String WeatherName;
    private Boolean Def;//默认选项,被设为默认的城市第一个在WeatherActivity中显示
    

    NEXT:
    酷欧天气2.0(二)——添加城市ChooseAreaActivity
    https://www.jianshu.com/p/38e54b92f3d2

    相关文章

      网友评论

          本文标题:酷欧天气2.0(一)——查看多个城市的天气信息

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