UI界面实现
在Android中用户界面都是布局在XML文件中的。这些XML文件放在工程/res/layout下面。把用户界面单独放在XML文档中定义,有利于让XML文档专门负责用户UI界面设置,而java程序专门负责业务实现,从而降低程序的耦合,便于程序的维护和扩展,符合mvc设计思想。
在XML中Android开发人员放置了很多我们经常用到的一些组件,比如view,Button,EditText等,通过这些系统提供的控件,我们可以开发出我们想要的程序界面来。
Layout 是一类特殊的ViewGroup 控件,它们本身并不显示任何的内容,存在的惟一原因就是其中的内部结构,能够更好地摆放它的子控件。比如: Linearlayout(线性布局),可将子控件按水平或垂直方向按顺序排列下去; Tablelayout(表格布局),可以将子控件按照表格的形式,一枚枚放置好;
Relativelayout(相对布局),实际应用中这个布局更灵活,它可以设定各个控件之间的对齐和排列关系,适合编写复杂的界面。有了Layout 的存在,控件和控件之间不再是独立地存在,而是更有机地结合在一起,设定起来也更为方便。
由于本程序功能比较简单,界面切换少,所用到的控件等都很简单,主要使用Palette进行操作布局,采用LinearLayout布局,orientation属性为vertical,布局文件如下:
(1)设置背景图片:底色为全白色,在activity_main.xml中实现,在底色之上选用其他照片作为主要背景;
(2)主界面:显示城市名称、日期、当前温度、温度范围;
(3)添加城市界面:中心按钮用以用户创建新城市天气信息;
设计如下:
(4)完成XML布局文件后,添加一个java文件加载布局,文件位置:app\java\ui\MainActivity.java,修改Manifest.xml,说明MainActivity这个Activity是程序的“Main”Activity,就是app的程序入口。