第二章:Android常用UI控件

1、介绍:

控件是界面组成的主要元素,界面中的控件有序排放和完美组合,便可在用户眼前呈现出丰富多彩的页面。

2、常用控件:

一、TextView控件:

在使用手机时,经常会看见一些文本信息,这些文本信息通常是由TextView控件显示

的。

常用属性:

属性 功能描述
android:id 控件的唯一标识ID
android:layout_width 控件的宽度
android:layout_height 控件的高度
android:text 显示的内容
android:textColor 文本颜色
android_textSize 字体大小
android:singleLine 是否单行显示
android:gravity 文本的对齐方式
android:layout_gravity 控件的对齐方式

常用方法:

方法 功能描述
setText((CharSequence text)) 设定控件显示内容
getText() 获得控件的显示文本
setTextSize() 设置显示字体的大小
serTextColor() 设置显示字体的颜色

二、EditText控件:

是程序用于和用户进行交互的另一个重要控件,它允许用户在空间里输入和编辑内容,并可以在程序中对这些内容进行处理。

常用属性:

属性 功能描述
android:hint 提示编辑框中药输入的内容
android:lines 输入内容的行数
android:maxLines 最大行数
android:minLines 最小行数
android:inputType 指定当前文本框显示内容的文本类型
android:textSize 文字大小

常用方法:

方法 功能描述
getText() 获取EditText控件中输入的信息
setText((CharSequence text)) 设定输入的内容
setTextSize() 设置输入文字的大小
setTextColor() 设置输入文字的颜色

三、Button控件:

Button是程序开发中必不可少的一个控件,其作用是用于响应用户的一系列单击事件,使程序更加流畅和完整。

常用的两种单击事件:

1)使用匿名内部类方式

2)采用实现OnClickListener接口方式

四、ImageView控件:

用于在界面上展示图片的一个控件,它可以让程序界面变得更加丰富多彩。

常用属性:

属性 功能描述
android:src 给ImageView控件指定一张图片

常用方法:

方法 功能描述
setImageResource() 给控件设置图片但不改变背景色
setBackgroundResource() 改变控件的背景色

五、DatePicker控件:

是Android中的日期选择控件,可以通过设置属性来确定日期选择范围,也可以通过定义好的方法获取到当前选中的时间,并且在修改日期的时候,有相应的事件对其进行响应。

常用属性:

属性 功能描述
android:calendarViewShown 是否显示日历
android:startYear 设置可选开始年份
android:endYear 设置可选结束年份
android:maxDate 设置可选最大日期
android:minDate 设置可选最小日期

常用方法:

方法 功能描述
intgetYear() 获取当前控件选择的年份
intgetMonth() 获得当前控件选择的月份(0~11)
intgetDayOfMonth() 获得当前控件选择的日

3、App之间的通信:

在Android系统中,每个应用程序通常都由多个界面组成,每个界面就是一个activity,在这些界面进行跳转时,实际上也就是activity之间的跳转。activity之间的跳转需要用到Intent(意图)组件,通过intent可以开启新的activity实现界面跳转功能。

Intent被称为意图,是程序中各组件进行交互的一种重要方式,它不仅可以指定当前组件要执行的动作,还可以在不同组件之间进行数据传递。

Intent被分为两类:显式意图和隐式意图

一、显式Intent:

①、基本语法:

方法 功能描述
Intent((Context packageContext,Class <?> cls)) 创建一个Intent对象,明确Intent跳转时的源activity和目标activity
startActivity(intent) 启动目标组件,根据intent启动某个Activity

②向下一个页面传递数据:

方法 功能描述
putExtra(String name,String value) 传递字符串类型的数据
putExtra(String name,int value) 传递整型的数据
putExtra(String name,boolean value) 传递布尔型的数据
putExtra(String name,Serializable value) 传递序列化的对象

③下一个页面接收数据:

方法 功能描述
getStringExtra(String name) 接收字符串类型的数据
getIntExtra(String name,int defaultValue) 接收整型的数据
getBooleanExtra(String name,boolean defaultValue) 接收布尔类型的数据
getSerializableExtra(String name) 接收序列化的对象

二、隐式Intent:

相比于显式Intent,隐式Intent则含蓄了很多,它并不明确指出我们想要启动哪一个活动,而是指定了一系列更为抽象的action和category等信息,然后交由系统去分析这个Intent,并帮我们找出合适的活动去启动。

①基本用法:

方法 功能描述
Intent.setAction(String action) 设置action属性
Intent.setData(String data) 设置Data属性
Intent.setType(String type) 设置Type属性
Intent.putExtras(Bundle bundle) 设置Extra属性
相关推荐
皮皮林55111 小时前
SpringBoot 全局/局部双模式 Gzip 压缩实战:14MB GeoJSON 秒变 3MB
java·spring boot
weixin_4569042711 小时前
Spring Boot 用户管理系统
java·spring boot·后端
趁你还年轻_11 小时前
异步编程CompletionService
java
DKPT11 小时前
Java内存区域与内存溢出
java·开发语言·jvm·笔记·学习
sibylyue11 小时前
Guava中常用的工具类
java·guava
奔跑吧邓邓子11 小时前
【Java实战㉞】从0到1:Spring Boot Web开发与接口设计实战
java·spring boot·实战·web开发·接口设计
专注API从业者11 小时前
Python/Java 代码示例:手把手教程调用 1688 API 获取商品详情实时数据
java·linux·数据库·python
开开心心loky11 小时前
[iOS] push 和 present Controller 的区别
ui·ios·objective-c·cocoa
一笑的小酒馆11 小时前
Android性能优化之截屏时黑屏卡顿问题
android
奔跑吧邓邓子11 小时前
【Java实战㉝】Spring Boot实战:从入门到自动配置的进阶之路
java·spring boot·实战·自动配置