Android Stduio实现天气预报系统

一、项目概述

本次项目主要实现了天气预报功能。通过调用天气预报接口来获得天气数据,用LIstView和GridView来搭建每个界面,将查询的天气信息存储在SQLiteDatabase中。应用包括了五大界面:

  • 首页面:有各种组件装饰,显示天气、温度、风向及各种指数,还有未来三天的天气
  • 城市管理界面:在这里可以对添加的城市进行管理
  • 搜索更多城市页面:可以添加想要查看的城市
  • 删除城市页面:可以删除已经添加的城市信息
  • 更多设置页面:可以设置壁纸、查看版本信息和分享软件

在这里插入图片描述

二、功能分析

  1. 通过天气预报接口获取网络数据
  2. 展示选择城市的天气情况、温度、风向,各种指数以及未来三天的基础天气情况
  3. 将从网络中获取到的城市信息保存到数据库中,便于没有网时候进行数据请求
  4. 对数据库中的存储的信息,进行增删改查等操作

三、开发环境

在这里插入图片描述

如果城市添加后没有显示天气,就说明api的每日次数用完了,可以自己到官网申请自己的免费天气api,非常简单,👉教你如何申请免费的API接口

四、涉及知识点

容器类布局
RelativeLayout
LinearLayout
基础控件的绘制与使用
TextView:显示文本内容的控件
ImageView:设置显示图片的控件
EditText:可接受用户输入的控件
Button:按钮控件
复杂控件的绘制与使用扩展
ListView:显示列表数据控件,使用适配器填充其内部内容1.BaseAdapter的使用方法 2.通知适配器更新数据3.设置每一项的点击监听器
GridView:显示网格数据控件与ListView使用方式非常相似
ViewPager:可左右滑动的包含多个view或者Fragment的控件1.FragmentStatePagerAdapter的使用2.需要页数发生变化时,提示适配器更新的方式3.设置滑动图标指示器4.设置滑动监听事件
CardView:v7包当中的控件,使用之前需要导包,一般用于listview每一个item的容器类布局,可制作成卡片式效果包含自带属性,需要带入appNs域名。
Activity
1.创建和绑定布局
2.生命周期
3.跳转与传值
Fragment
1.加载进入ViewPager的方式
2.activity向fragment传值的方式
数据存储——数据库的操作
1.SQLiteOpenHelper的创建与使用
2.SQLiteDatabase函数的调用
3.创建表,增删改查数据的方法
数据存储——共享参数存储
1.数据的获取与存储
2.切换首页壁纸图片
简单第三方框架使用功能
Picasso加载网络图片的框架
xutils封装完善的多功能框架,此处主要使用通过网络获取数据的功能
Gson解析json数据的框架,简单方便

五、项目演示

1、打开项目,运行APP,显示首页面天气及各项指数等信息。
在这里插入图片描述
2、点击左下角的+号,进入城市管理页面。
在这里插入图片描述
3、再点击右下角的添加按钮,进入城市添加界面,在这里选择你想要查看的城市
在这里插入图片描述
4、我们选择【上海】,自动跳转到主页面,显示上海的天气的信息
在这里插入图片描述
5、这时候我们再依次添加【深圳】【沈阳】两座城市,可以看到城市和天气信息立刻就更新了
在这里插入图片描述
6、这时候我们可以滑动这个界面,下面的指示点对应的已经添加的城市,现在看到一共有4个城市,也就是有4页,我们向左滑动到第一页【苏州】
在这里插入图片描述
7、这些穿衣指数、洗车指数等指数点击都会有温馨的提示框,非常人性化
在这里插入图片描述
8、我们继续进入到城市管理界面,这里可以对城市进行删除,然后点击右上角的保存按钮
在这里插入图片描述
9、我们点击主页面的右下角的三个点按钮,显示更多设置
在这里插入图片描述
10、我们选择改变壁纸,一共有三款可以选择,选择完毕立即进行主题更改
在这里插入图片描述
11、觉得软件很不错的话,还可以分享本软件给好友
在这里插入图片描述

六、项目总结

本次项目通过调用天气API实现天气预报的功能,逻辑实现上还是比较复杂的,属于进阶项目,包括SQLiteOpenHelper的创建与使用,对SQLiteDatabase函数的调用和创建表、增删改查数据的方法,以及共享参数的使用方法。通过对这次项目的学习,可以加深基础控件和Activity的理解,还会知道如何使用第三方框架。

七、源码获取

1️⃣直接点击右侧链接下载源代码Android天气预报源码
2️⃣直接点击右侧链接下载课设报告Android天气预报报告
3️⃣关注公众号《 萌新加油站后台回复:天气预报

🚀这有你错过的精彩内容
Android Studio实现外卖订餐系统
Android Studio实现考试管理系统
Android Studio实现图书馆订座系统
Android Studio实现学生信息管理系统
Android Studio实现仓库管理系统

邪淫者,凡属他人之妻女,我以邪心犯之者皆是。即己之妻室,而犯之非其时(指经期、孕月、产后、乳哺时、疾病中、斋戒日)、非其地(指非交合之处所),或于其身有生死之关系,或于其日犯人神之禁忌,或于其体失交合之正理,或于其日属神圣之诞期,皆邪淫也。饱暖思淫欲,是色欲之过。今天的社会色情泛滥,出了家门到处都有色情场所,色情视频、图片、文字随处可见,闭门在家亦可从网络、电视中轻易获取色情信息,诱惑之大,令人咋舌。淫风破坏人伦秩序,败坏社会道德,为下一代带来极严重影响,而行淫后果更是烦恼不断。

Android Studio 天气预报实现可以分为以下几个步骤: 1. 创建一个新的Android项目,并设置好项目的基本信息。 2. 在布局文件中设计天气预报界面的UI,包括显示天气信息的TextView、刷新按钮等。 3. 在MainActivity中,通过网络请求获取天气信息,并更新UI。 4. 在AndroidManifest.xml文件中添加网络权限。 下面是一个简单的示例代码,演示了如何使用Android Studio实现天气预报功能: 1. 在布局文件中设计天气预报界面的UI,例如activity_main.xml: ```xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <TextView android:id="@+id/weatherTextView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="天气预报" android:textSize="24sp" android:layout_gravity="center_horizontal"/> <Button android:id="@+id/refreshButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="刷新" android:layout_gravity="center_horizontal"/> </LinearLayout> ``` 2. 在MainActivity中,通过网络请求获取天气信息,并更新UI,例如MainActivity.java: ```java public class MainActivity extends AppCompatActivity { private TextView weatherTextView; private Button refreshButton; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); weatherTextView = findViewById(R.id.weatherTextView); refreshButton = findViewById(R.id.refreshButton); refreshButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // 发起网络请求获取天气信息 // 更新UI显示天气信息 } }); } } ``` 3. 在AndroidManifest.xml文件中添加网络权限,例如: ```xml <uses-permission android:name="android.permission.INTERNET" /> ``` 这样,当用户点击刷新按钮时,就会发起网络请求获取天气信息,并更新UI显示天气预报
评论 65
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

振华OPPO

你的鼓励是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值