大话布局
移动客户端,就说手机吧,咱们看到的就是一块屏幕,一块矩形区域。想一想现在每天花费了多少时间盯住这块矩形区域,你就在知道它多么重要。
屏幕用一个有范的词汇来表达,那就叫做UI,用户界面。这块界面是由视图构成,就是一些划分出来的小的矩形区域,上面放上了不同性质的对象或者数据。
根据性质的不同把对象或数据分类为:文本、图片、按钮,主要是这三种,其他的暂略过,咱们先重点关注这三种使用最频繁的三种对象。
这样一个APP区分出三种视图应该没错吧!当然,这样的布局是通过计算机指令或者叫做程序来实现的,而编写指令或者程序的工具通常称为集成开发环境(IDE),写出来的指令或者程序称作代码,就像以前拍电报的密电码,这些代码只有符合一定的规则,计算机才能理解,才能得到符合程序员设计的结果。也就是说,你想在手机上布置哪些东西,得到怎样的布局,那你就必须按照一定的语言规则书写出指令代码,告诉计算机如去实现,而这种有规则的语言被称为XML语言,即可扩展标记语言,还是理解成密电码吧。
这里有一个在线的IDE,让我们来试一下,按照XML语言的规则来编写代码。
手机上显示的结果是:
写这样几行代码,显示结果。
<TextView
android:text="@string/my_photos"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
当你按照这样的规定格式书写更多的代码,就可以显示更加丰富多彩的内容了。细节才是磨炼人的地方,说大话容易,关键是耐性、坚持。显示一条文本,就写一个<TextView />,想要显示更多,表达更多,就写更多的<TextView />。所以< ***** />的格式实际上是定义对象或者数据的分类类型,或者称为XML的元素。在数据类型之后,就要描述各种属性的细节,如文本内容是什么,长度高度是多少,颜色、背景、排列等等,如果你不描述,就会按照默认去显示,但是那样就不叫设计了,那样的****UI****也没法子使用,也没人用了。
<ImageView />
<TextView />
<Button />
......
......
......
<View />
<EditText />
<CheckBox />
......
......
......
上面定义数据类型的方法使用了< ***** />的格式,称为自闭标签。
也可以这样来定义:
<ImageView
<ImageView/>
<TextView
<TextView/>
<Button
<Button/>
单独开始和结束标签。选择哪一种都可以,但后一种更清晰,特别是你可以自定义标签,或者在嵌套使用标签或者将标签分组时更合适。
综上所述,布局就是说,界面上都有些数据,都是些什么东西,什么玩艺。
布局的大话就雷到这,后面是细节,后面是细节,后面是细节。
属性
属性其实就是说,数据,每一个数据,你都有哪副德行。
<TextView 数据类型
...... 属性(德行)
...... 属性(德行)
...... 属性(德行)
<TextView/>
描述属性的公式是:
属性名称 = “属性取值”
属性名字有很多,慢慢熟悉,不用着急,天天练自然会。
属性取值需要你来根据需要设置,如果不设置,开发工具实际上就给你设定为默认值了。如果默认值能够满足需要,那就OK,否则必须自己设置。
练习题
XML元素的名字:TextView
列出所有属性(不包括属性值):android:text,android:textColor,android:background,android:layout_width,android:layout_height
结束标签在哪一行?:6