美文网首页
酷欧天气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