Android 基本控件相关知识整理
Android应用开发的一项重要内容就是界面开发。对于用户来说,不管APP包含的逻辑多么复杂,功能多么强大,如果没有提供友好的图形交互界面,将很难吸引最终用户。作为一个程序员如何才能开发出友好的图形界面呢。实际上Android提供了非常丰富UI(User Interface)控件,开发者只要掌握了这些控件的特性,按照一定的规律,就可以像堆积木一样开发出友好的图形界面。
本章将介绍常用的基本控件的具体用法。
一、Android UI的基础知识
Android中所有的可视化组件都是继承自View类,通常把它们称之为视图。视图也经常被称为控件或者小组件。ViewGroup类继承自View类,是对View类的扩展,它用来包含、管理多个视图。用户界面(User Interface UI)就是由一个个具体的View和ViewGroup构成的一颗视图树。下图显示的是构成界面的视图树。

二、Android基本控件
1. TextView
TextView直接继承自View类,是一个只读文本标签,支持多行显示,字符串格式化以及自动换行等特性。通过XML属性和TextView类的相关方法可以设置TextView的显示特性。
相关文章:
TextView展示富文本时emoj或图片和文字不对齐的解决方案
TextView 显示内容时出现 ArrayIndexOutOfBoundsException 的解决方法(Android 4.1)
2. EditText
EditText是TextView的直接子类,一个可编辑的文本输入框。它可以接受多行输入,并自动换行。
EditText XML属性及方法如下:

3. Button&ImageButton
Android按钮可包含文本、图片和图片及文字,分为Button和ImagetButton两个控件。Button是TextView的直接子类,主要响应用户的单击操作,如常见的“确定”、“登录”、“注册”按钮等。
ImageButton和Button一样也是主要响应用户的单击操作的UI控件,ImageButton可设置图片的按钮,不过ImageButton并不是Button的子类而是ImageView的直接子类。
4. RadioButton和RadioGroup
RadioButton是单选按钮,可提供若干选项方便用户进行选择操作,且在一组选项中只能选择一个。RadioGroup继承自ViewGroup和RadioButton结合使用,将若干RadioButton选项组合为一组。
5. CheckBox
CheckBox是和RadioButton一样是常见的选项控件,CheckBox是复选框控件即用户可任意选择多个选项。
6. ImageView
ImageView用于显示本地资源图片或加载网络图片的UI控件,TextView和ImageView能用来实现Android图文并茂的界面。
ImageView的常用属性及方法如下:

scaleType是ImageView控件的重要属性,当加载的图片资源与控件的大小不匹配时,该如何呈现图片资源就可通过这个属性进行配置。scaleType属性值如下:

7. RecyclerView
RecyclerView 是现在 Android 中最重要的基本组件之一,它的出现就是为了高效代替 ListView 和 GridView。 RecyclerView 除了比 ListView 好用外,某些地方它却更复杂了,它将更多的权力交给了开发者自己,比如布局,比如 ITEM 的分割线,比如点击监听等等。平常开发我们一般按照 RecyclerView 的基本用法便可以实现绝大多数需求,但是某些场景下却远远不够,比如我们不想局限于 LinearLayoutManager 想自己定义 LayoutManager,我们需要定义时光轴的效果,我们想实现美妙的添加删除动画等等,这些情况下解决问题的话需要我们对 RecyclerView 本身有足够的了解。
相关文章:
https://blog.csdn.net/briblue/article/details/70161917
Android 基本控件相关知识整理的更多相关文章
- Android ListVeiw控件(转载整理)
列表的显示需要三个元素: 1.ListVeiw 用来展示列表的View. 2.适配器 用来把数据映射到ListView上的中介. 3.数据 具体的将被映射的字符串,图片,或者基本组件. 根据列表 ...
- Android 开源控件与常用开发框架开发工具类
Android的加载动画AVLoadingIndicatorView 项目地址: https://github.com/81813780/AVLoadingIndicatorView 首先,在 bui ...
- 矩阵, 矩阵 , Android基础控件之ImageView
天下文章大家抄,以下所有内容,有来自copy,有来自查询,亦有自己的总结(目的是总结出自己的东西),所以说原创,不合适,说是转载也不恰当,所以我称之为笔记,可惜没有此分类选项,姑且不要脸一点,选择为原 ...
- Github上star数超1000的Android列表控件
Android开发中,列表估计是最最常使用到的控件之一了.列表相关的交互如下拉刷新,上拉更多,滑动菜单,拖动排序,滑动菜单,sticky header分组,FAB等等都是十分常见的体验.Github中 ...
- 【Android开发日记】之入门篇(十三)——Android的控件解析
Android的控件都派生自android.view.View类,在android.widget包中定义了大量的系统控件供开发者使用,开发者也可以从View类及其子类中,派生出自定义的控件. 一.An ...
- DevExpress之GridControl控件小知识
DevExpress之GridControl控件小知识 一.当代码中的DataTable中有建数据关系时,DevExpress 的 GridControl 会自动增加一个子视图 .列名也就是子表的字段 ...
- IOS学习资源收集--开发UI控件相关
收集的一些本人了解过的iOS开发UI控件相关的代码资源(本文持续补充更新) 内容大纲: 1.本人在github上也上传了我分装好的一些可重复利用的UI控件 2.计时相关的自定义UILabel控件 正文 ...
- android 基础控件(EditView、SeekBar等)的属性及使用方法
android提供了大量的UI控件,本文将介绍TextView.ImageView.Button.EditView.ProgressBar.SeekBar.ScrollView.WebView ...
- Android基本控件之Menus
在我们的手机中有很多样式的菜单,比如:我们的短信界面,每条短信,我们长按都会出现一个菜单,还有很多的种类.那么现在,我们就来详细的讨论一下安卓中的菜单 Android的控件中就有这么一个,叫做Menu ...
随机推荐
- Boto3
https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.htmlboto3 安装pip install bot ...
- spring 装配机制
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w ...
- 后台跨域(CORS)
解决跨域问题 一.为什么会有跨域问题? 是因为浏览器的同源策略是对ajax请求进行阻拦了,但是不是所有的请求都给做跨域,像是一般的href属性,a标签什么的都不拦截. 二.解决跨域问题的两种方式 JS ...
- Mysql必知必会 第一章 了解SQL
第一章 了解SQL 1.1 数据库基础 1.1.1 什么是数据库 数据库的定义:保存有组织的数据的容器 数据库软件不是数据库,而是DBMS 1.1.2 表 表(Table)的定义:某种特定类型数据的结 ...
- linux学习第十九天 (Linux就该这么学) 结课了
今天最后一天课程了,结课了,还有点舍不得那,在些也祝 李老师 事业蒸蒸日上,超来超好, 今天内容是部署了 LNMP 部署动态网站环境(linux +nginx+mysql+php) 安装文件挺别多, ...
- form表单上传图片文件
import os def upload(request): if request.method == 'GET': img_list = models.Img.objects.all() retur ...
- nodeJS接入微信公众平台开发
一.写在前面的话 Node.js是一个开放源代码.跨平台的JavaScript语言运行环境,采用Google开发的V8运行代码,使用事件驱动.非阻塞和异步输入输出模型等技术来提高性能,可优化应用程 ...
- Win10下 usart驱动PL2303无法安装的问题
随着系统的 普及,很多小伙伴也放弃了原有的win7系统,加入了win10的行列.但是相对win7的稳定来说,win10还存在很多的不足 . 新买了一个usart的模块,但是在自家的电脑上使用的时候 一 ...
- 从零开始学java(二)类与对象
面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为. 类是对象的抽象,对象是类的具体实例. 1.构造一个类,让其拥有属性和方法 ...
- nginx常用服务配置
一.nginx.conf的配置方式,创建新vhost user nginx; worker_processes ; worker_cpu_affinity ; worker_rlimit_nofile ...