🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 第四天.基础UI控件 ## ### 4.1基本控件介绍 ### 本章全部都是控件,自己拖拽一下,研究一下就行了,熟悉android里有什么控件 应该怎么用,主要就是看demo,自己拖拽,如果不会拖拽哪请看第一天的课程 **1、Button 按钮** + 研究ButtonDemo ![](https://box.kancloud.cn/2016-05-21_573fc2ec5a459.png) **2、TextView 文本框** + 研究TextViewDemo ![](https://box.kancloud.cn/2016-05-21_573fc2ec71f5b.png) **3、EditText 文本编辑框** + 研究EditTextDemo ![](https://box.kancloud.cn/2016-05-21_573fc328805e8.png) **4、CheckBox 多项选择** 每个多选框都是独立的,可以通过迭代所有多选框,然后根据其状态是否被选中再获取其值。 + CheckBox.setChecked(true);//设置成选中状态。 + CheckBox.getText();//获取多选框的值 + 调用setOnCheckedChangeListener()方法,处理多选框被选择事件,把CompoundButton.OnCheckedChangeListener实例作为参数传入 + 研究CheckBoxDemo ![](https://box.kancloud.cn/2016-05-21_573fc328946c8.png) **5、RadioButton 单项选择** + 研究RadioButtonDemo ![](https://box.kancloud.cn/2016-05-21_573fc328aa489.png) **6、Spinner 下拉列表** + Spinner.getItemAtPosition(Spinner.getSelectedItemPosition());获取下拉列表框的值 + 调用setOnItemSelectedListener()方法,处理下拉列表框被选择事件,把AdapterView.OnItemSelectedListener实例作为参数传入 **下拉列表框—Adapter** + 很多时候显示在下拉列表框的值并不是希望得到的值,如果要做一个联系人下拉列表框,列表框列出的是联系人的姓名,因为姓名有可能相同,所以我们希望得到的值应该为该联系人的id,要实现这种需求我们需要自定义Adapter,当然自定义Adapter需要我们编写一小段代码,如果我们不想编写Adapter,又能实现我们的需求,那是最好不过的了。通过观察ArrayAdapter中getView(int position, View convertView, ViewGroup parent)的内部代码发现,如果为ArrayAdapter指定的实际泛型参数类型没有实现CharSequence(字符串)接口,将会调用该类型对象的toString()向下拉列表框输出显示值。利用这个特点我们可以重写javaBean的toString()向下拉列表框提供显示值。 下拉列表框--自定义选项界面样式 ![](https://box.kancloud.cn/2016-05-21_573fc328c08a3.png) + Spinner.getItemAtPosition(Spinner.getSelectedItemPosition());获取下拉列表框的值 + 调用setOnItemSelectedListener()方法,处理下拉列表框被选择事件,把AdapterView.OnItemSelectedListener实例作为参数传入 **7、TimePicker/DatePicker 时间选择器** + 研究TimeDatePicker ![](https://box.kancloud.cn/2016-05-21_573fc328d9d41.png) ![](https://box.kancloud.cn/2016-05-21_573fc328f216c.png) ![](https://box.kancloud.cn/2016-05-21_573fc329108a3.png) **8、ScrollView 滚动视图** + 研究ScrollViewDemo ![](https://box.kancloud.cn/2016-05-21_573fc32928403.png) **9、ImageView 图片视图** + 研究ImageViewDemo ![](https://box.kancloud.cn/2016-05-21_573fc3293ee75.png) **10、ImageButton 图片按钮** + 研究ImageButtonDemo ![](https://box.kancloud.cn/2016-05-21_573fc3295182b.png) **11、GridView 网格视图** + 研究GridViewImageDemo ### 4.2认识Widget组件 ### 1. 界面中展示的各个小组件 2. 有独立的事件处理能力 3. 所有Wiget组件都是继承View而来 ### 4.3Widget组件类继承关系 ### ![](https://box.kancloud.cn/2016-05-21_573fc3296aa87.png) [源代码下载](http://www.apkbus.com/android-83257-1-1.html)