实验二:UI设计
实验二:UI设计
实验目的
本次实验的目的是让大家熟悉Android开发中的UI设计,包括了解和熟悉常用控件的使用、界面布局和事件处理等内容。
实验要求
- 熟悉和掌握界面控件设计
- 了解Android界面布局
- 掌握控件的事件处理
实验内容
Android中有许多常用控件:
文本框:TextView、EditText
按钮:Button、RadioButton、RadioGroup、CheckBox、ImageButton
列表:List、ExpandableListView、Spinner、AutoCompleteTextView、GridView、ImageView
进度条:ProgressBar、ProgressDialog、SeekBar、RatingBar
选择器:DatePicker、TimePicker
菜单:Menu、ContentMenu
对话框:Dialog、ProgressDialog
- RelativeLayout,TextView,EditText控件。
RelativeLayout表示的就是一行要设置
android:id="@+id/ll_name"
android:layout_width="match_parent"
android:layout_height="wrap_content">
TextView,EditText控件同样有layout_width,layout_height属性
实现的效果和代码如下
- LinearLayout,Button控件
LinearLayout就是线性布局
具体的代码和实现效果如下
每个控件都有一系列的属性,例如id、size、text、color等等
3.页面的布局
Android中有很多布局:
FrameLayout:最简单的一个布局对象。它里面只显示一个显示对象。Android屏幕元素中所有的显示对象都将会固定在屏幕的左上角,不能指定位置。但允许有多个显示对象,但后一个将会直接在前一个之上进行覆盖显示,把前一个部份或全部挡住(除非后一个是透明的)。
LinearLayout:以单一方向对其中的显示对象进行排列显示,如以垂直排列显示,则布局管理器中将只有一列;如以水平排列显示,则布局管理器中将只有一行。同时,它还可以对个别的显示对象设置显示比例。
TableLayout:以拥有任意行列的表格对显示对象进行布局,每个显示对象被分配到各自的单元格之中,但单元格的边框线不可见。
AbsoluteLayout:允许以坐标的方式,指定显示对象的具体位置,左上角的坐标为(0, 0),向下及向右,坐标值变大。这种布局管理器由于显示对象的位置定死了,所以在不同的设备上,有可能会出现最终的显示效果不一致。
RelativeLayout:允许通过指定显示对象相对于其它显示对象或父级对象的相对位置来布局。如一个按钮可以放于另一个按钮的右边,或者可以放在布局管理器的中央。
布局中可以放置控件,而每个布局又可以嵌套其他布局
RelativeLayout:
LinearLayout:
FrameLayout,LinearLayout,TableLayout,AbsoluteLayout,RelativeLayout示例。
4.事件的处理
事件处理:响应用户UI动作,提高应用程序交互性
1基于监听的事件处理机制
2基于回调的事件处理机制
3Handler消息处理
下面示例登录按钮的事件处理
xml文件和实现的效果如下
点击登录按钮之后就会跳转到LogiunActivity执行程序
执行Onclock监听函数,成功之后就会调用login函数,然后执行login操作。