2 天气实况预报系统的具体实现

基于Android 平台的智能手机访问服务器的主要技术是数据交互方法。基于Android 操作系统的天气实况预报系统设计的核心是通过调用通信协议SOAP(Simple Object AccessProtocol)的接口,从Web Service 提供商中提取天气预报的数据信息,为客户端服务。其基本功能是当用户运行天气预报系统程序时,在手机屏幕上显示出中国的城市名称,用户单击任意一个城市名,可获得该城市的天气实况预报信息。用户也可以输入城市名称,点击查询获得天气预报信息。CitiesWeather-Forecast 工程目录结构及其源代码文件如图1所示。

2.1 Android平台的用户界面实现

Android 提供的可变化的用户界面(UI)开发模块是基于XML 文件的。这些XML 文件放在工程/res/layout 下面。这个目录可包含所有应用程序所需的非码部分,比如图片、字符串、xml 文件。当要使用到这些资源时,在代码目录中打开R.java文件即可。在XML 文件里编辑界面的代码,实现起来不仅方便,使用时也会更加灵活。

在Android 程序设计中要用到一些基本的Android UI 元素,通过使用Views、View Groups 和layouts 可为Activity 创建功能性的、富有直观力的UI.通常是使用Android SDK 中提供的一些控件,进行布局、扩展和定制这些控件,并使用ViewGroups 去组合Views,创建由相互作用的子控件组成的原子的、重复利用的UI 元素。也可以创建自己的Views,来实现显示数据和与用户交互的新途径;或使用一些继承自View Group 的Layout 管理器来组织Android UI中的单个元素到屏幕上。

在一个Android 应用中,用户界面由View 和View Group对象构建。View 与View Group 有很多种类,而它们都是View类的子类。View 对象是Android 平台中用户界面的基本单元。View 类是widgets(工具)类的父类,它们提供了诸如文本输入框和按钮之类的UI 对象的完整实现。View Group 类是Layouts(布局)类的父类,它们提供了诸如流式布局、表格布局以及相对布局之类的布局架构。

View 对象是一个数据体,它的属性存储了用于屏幕上一块矩形区域的布局参数及内容。并负责它所辖的这个矩形区域之中所有测量、布局、焦点转换、卷动以及按键/触摸手势的处理。作为一个用户界面对象,View 同时也担任着用户交互关键点以及交互事件接受者的角色。天气实况预报系统程序功能比较单一,其UI 也相对比较简单,只要有一个输入框、一个查询按钮以及一个显示所有中国城市信息的列表即可。为了建立Android 平台的用户界面,首先要在Package Explorer 窗口中展开Layout 后新建。xml 文件,用来对窗口界面进行布局,主要有系统运行的主配置文件main.xml 和result.xml.

Layout 是一类特殊的ViewGroup 控件,它们本身没有任何可显示内容,存在的惟一原因就是其中的内部结构,能够更好地摆放它的子控件。比如Linearlayout,可将子控件按水平或垂直方向按顺序排列下去;Tablelayout,可以将子控件按照表格的形式,一枚枚放置好;Relativelayout 更灵活,可以设定各个控件之间的对齐和排列关系,适合定制复杂的界面。有了Layout 的存在,控件和控件之间不再是割裂地存在,而是更有机地结合在一起,设定起来也更为方便。在本实例的main.xml 文件中主要是添加一些界面的布局设置,例如如下代码:

android:orientation="horizontal"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/cityText"/>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/searchBtn"/>

上述代码生成了一个Linearlayout,定义了一个EditText 和Button,并且设置了相关的参数。在Android 中,控件最重要的大小属性是width/height,开发者可以指明控件的大小,控件的宽、高以及在屏幕中的显示位置等,可以设定成为fill_parent 和wrap_content.另外,还可以设置相应的文本信息,并可通过android:text="@string/cityText"/>进行引用(string 文件存放在工程的res/values 中)。按照这种方法,还可以依据需要定义相应的布局控件,譬如定义用来呈现天气实况信息的UI等。

android实况天气,天气实况预报系统的具体实现 - Android手机天气预报系统设计及实现...相关推荐

  1. ffmpeg android 编译选项,技术共享|安卓系统的完美转身 Android FFmpeg 编译和使用

    原标题:技术共享|安卓系统的完美转身 Android FFmpeg 编译和使用 2017年,智能手机修罗场,国产手机华为.OPPO.vivo.小米等纷纷出大招,跻身全球销量前10名单,华为推出荣耀旗舰 ...

  2. android的天气和时钟部件,Android的天气和时钟部件

    <Android的天气和时钟部件>一款能够实时关注的天气的气象软件应用,还是非常不错的,喜欢的小伙伴们赶紧来网下载吧! <Android的天气和时钟部件>软件简介 Androi ...

  3. android 版本分布 最新,安卓手机系统版本分布:Android 9.0占比达34%!

    原标题:安卓手机系统版本分布:Android 9.0占比达34%! 如今,就国内智能手机市场来说,华为.小米.OPPO.vivo等智能手机厂商不仅在硬件配置上激烈较量,比如采用最新的处理器,再比如手机 ...

  4. android 系统版本比例,安卓手机系统版本分布:Android 9.0占比达34%!

    如今,就国内智能手机市场来说,华为.小米.OPPO.vivo等智能手机厂商不仅在硬件配置上激烈较量,比如采用最新的处理器,再比如手机运行内存就从6GB.8GB提升到了10GB乃至于12GB.当然,在软 ...

  5. Android大作业:备忘录系统

    Android大作业:备忘录系统 杂言: android终于结课了,最后的大作业要求做一个备忘录系统.刚拿到题目的时候意气风发立志做一个比系统自带备忘录好的APP自己用,结果做着做着发现自己实在是菜的 ...

  6. Android 11 强制用户使用系统相机?

    最近在Android开发者官网中查看Android 11版本变更记录的时候,发现一个有意思的改动 此项变更是说在使用Intent创建拍照,录像隐式请求的时候,只有手机预装的系统相机才会响应.举个例子, ...

  7. 安卓APP源码和设计报告——手机天气预报系统

    目录 摘要1需求分析2一.开发背景2二.项目需求分析2总体设计2一.系统规划2二.系统功能界面3设置预报城市界面:3天气显示界面:4Widget 桌面小部件界面:5三.设计目标6系统设计6一.开发及运 ...

  8. Android 天气APP(十一)未来七天的天气预报、逐小时预报、UI优化

    上一篇:Android 天气APP(十)下拉刷新页面天气数据 逐小时天气预报.UI优化 新版------------------- 一.UI优化 二.逐小时天气预报 ① 添加逐小时天气API ② 使用 ...

  9. Android使用高德和风天气Sdk获取定位实况天气数据(二)

    Android使用高德和风天气Sdk获取定位实况天气数据(二) 先看一下效果 关于 实现 第一步,引用高德api与和风天气 第二步,修改AndroidManifest.xml 第三步,修改activi ...

最新文章

  1. Spring之数据库操作
  2. opengl加载显示3D模型3d类型文件
  3. 用二维数组实现矩阵转置
  4. if嵌套-火车站安检-检查刀的长度
  5. python星空画法教程_对比几段代码,看看你是 Python 菜鸟还是老鸟
  6. 利用Asp.Net Core的MiddleWare思想处理复杂业务流程
  7. 踩内存是什么意思啊_网络资讯:0x0000008e蓝屏代码是什么
  8. 上海java 开发培训_上海十大java培训
  9. Requst Servervariables
  10. IPLAT62--弹窗
  11. Log4j具体使用实例
  12. librdkafka官方Demo在Windows上运行与使用
  13. FIR 带通滤波器设计
  14. 互联网赚钱指南!我是如何零成本空手套白狼?
  15. 《一切都是最好的安排》——加措
  16. 招商银行吴颖:招行大数据应用经验分享
  17. 畅享10S 鸿蒙,潮流配色+全能实力 华为畅享10S让你做新春最靓的仔
  18. 教你PDF复制文字的方法
  19. oppoR11S安装应用一直失败
  20. 四大亮点不容错过,TDengine 开发者大会全议程公布!

热门文章

  1. 编写一个打印全年日历的程序
  2. 计算机设计大赛评分,附表2计算机设计大赛作品要求及评分标准.doc
  3. phpems最低的php版本,PHPEMS安装使用操作文档
  4. struts2 报错
  5. Android 数据库和存储文件(第十五 十六 十七节课)
  6. Environment.Exit(0)和Environment.Exit()方法
  7. (一)使用TrueSTUDIO软件新建一个基于STM32标准库工程
  8. class ‘numpy.ndarray‘ 用法-零维、一维、多维的索引方式
  9. 会员积分规则制定的基本要求
  10. |英文阅读||权力的游戏|_卷一_序章|No.01