搞过winform或webform的朋友肯定都对控件非常熟悉,开发过程中界面上都要用到很多的相关控件。今天我们就来学习一下Android里的几个常用控件。拿CSDN的注册页面来作为参考,我们也来布局一个类似的手机页面。
CSDN的注册页面如下:http://passport.csdn.net/account/register,查看这个页面的源代码我们就可以发现,它是由一个table来进行布局的。那我们很自然的就想到我们手机的页面就使用TableLayout来进行布局吧:
从上面的布局文件我们可以看到,由于我们的手机屏幕较小,不能在一屏显示所有的信息,所以在TableLayout外面还套了一层ScollView,当页面内容超出一屏时,会出现纵向滚动条。
如果页面某些字段没有填写,我们需要弹出提示。还记得我们之前已经封装过一个MessageBox类了吗?但里面的AlertDialog标题中只有文字而没有图标,我们再增加一个Alert方法,使其弹出的对话框的标题中显示一个叹号图片,这个图片是Android里自带的:
Android中的下拉菜单是Spinner,相当于winform中的ComboBox,Html中的<select>,由于手机画面有限,在有限的范围选择项目,下拉菜单是唯一,也是较好的选择。为Spinner增加下拉项有很多种方法,在这里我使用了两种方法。一是直接在布局文件Main.axml中指定了Spinner的android:entries属性,见上面布局文件中的“工作年限”这一项,有这么个属性:android:entries="@+array/workExp"。这代表这个Spinner引用了一个叫做workExp的array。那么这个array是在哪里定义的呢?我们在Layout文件下新增一个叫做WorkExperience.xml的文件,内容如下:
这里的workExp就是被Spinner引用的array了。
另一种方法是在OnCreate方法里增加:
在点击校验码的输入框时,我们会出现一组五位随机字符串的验证码,这个效果我是这样实现的。在布局文件中有一个TableRow放了一个TextView,用来生成校验码,TableRow一开始是隐藏的,在点击了输入验证码的输入框后才可见。所以我们要对txtValidate输入框的Touch事件绑定处理方法:
MyTouchListener是一个实现了EditText.IOnTouchListener接口的类,用以实现点击输入框时的逻辑。记得实现Java的接口时,要继承Java.Lang.Object类:
在点击确定按钮时,我们要对页面的字段进行校验,有非空的校验,也有输入内容一致性的校验,这部分内容比较简单,我就不一一介绍了,先定义一个实现Button.IOnClickListener接口的类,实现按钮点击的逻辑,然后在按钮的SetOnClickListener中传入该类的实例化对象:
运行效果:
这里介绍了控件的一些常用属性和操作,更深入的应用留给大家慢慢发掘了~~
分享到:
相关推荐
Android学习笔记(一)——创建第一个Android项目 Android学习笔记(二)android studio基本控件及布局(实现图片查看器) Android学习笔记(三)android studio中CheckBox自定义样式(更换复选框左侧的勾选图像) ...
MonoDroid学习笔记 网络整理 经典
Android学习笔记(一)——创建第一个Android项目 Android学习笔记(二)android studio基本控件及布局(实现图片查看器) Android学习笔记(三)android studio中CheckBox自定义样式(更换复选框左侧的勾选图像) ...
这套学习笔记全面覆盖了这两个平台的基础知识、核心概念以及高级特性,对于想要深入理解和掌握Mono在Android开发中的应用非常有价值。 首先,我们来了解一下Mono for Android。它是一个.NET开发环境,允许开发者...
这篇“Android学习笔记——利用JNI技术在Android中调用、调试C++代码”将带你深入理解如何在Android应用中使用JNI来调用C++代码,以及如何进行调试。以下是对这一主题的详细阐述。 1. **JNI简介** JNI是Java平台的...
在深入探讨JAVA学习笔记之前,我们首先理解一下JAVA这一编程语言的重要性。JAVA,由Sun Microsystems公司(现已被Oracle收购)于1995年推出,是一种面向对象的、跨平台的编程语言,以其“一次编写,到处运行”的特性...
Python 笔记源码——内含python后端&机器学习等.zip Python 笔记源码——内含python后端&机器学习等.zip Python 笔记源码——内含python后端&机器学习等.zip Python 笔记源码——内含python后端&机器学习等.zip ...
在Android应用开发中,Navigation组件是一个强大的工具,用于管理应用程序中的屏幕..."Android Training学习笔记——Navigation 参考源码"提供了一个深入学习和实践的平台,对于提升Android开发技能具有显著的价值。
这篇"Android学习笔记——Http通信 源码"主要探讨了如何在Android应用中利用WebView控件加载网页以及使用ImageView控件加载网络图片,这两部分是Android应用与互联网交互的常见场景。 首先,我们来深入理解一下`...
总的来说,这份【狂神Java学习笔记——前端入门——HTML、CSS、JavaScript学习代码】是一份全面且实用的学习资料,它涵盖了前端开发的三大核心技术,并结合了个人实践和理解,对于希望入门前端开发的学习者来说是一...
Qt5学习笔记——QRadioButton与QButtonGroup是Qt5中两个重要的控件,用于实现单选按钮的功能。本文将详细介绍QRadioButton和QButtonGroup的使用方法和属性。 一、QRadioButton QRadioButton是一个可以switch on或...
在“Android学习笔记(九)——更复杂的进度对话框”中,我们将重点关注如何自定义和使用ProgressDialog。以下是一些关键点: 1. **创建进度对话框**: - 使用`ProgressDialog.show()`方法初始化一个进度对话框。...
首先,我们需要在XML布局文件中创建一个`ImageView`组件,它是用于显示图片的基础控件。例如: ```xml android:id="@+id/imageView" android:layout_width="wrap_content" android:layout_height="wrap_content...
这篇“Android Training学习笔记”主要围绕这两个组件展开,旨在帮助开发者提升他们的Android应用设计能力。 RecyclerView是Android SDK提供的一种列表视图控件,取代了早期的ListView。RecyclerView的优势在于它的...
学习笔记之——基于pytorch的FSRCNN 把我的代码上传了,后续有更正会更新这个代码
这篇“Android Training学习笔记——Navigation 参考源码(ListView版)”深入探讨了如何使用Navigation构建一个基于ListView的导航系统。我们将从以下几个方面来详细讨论这个主题: 1. **Navigation组件简介** ...
个人网课学习笔记