一个软件可以吸引到用户,除了优秀的功能可以解决用户的问题之外,良好的用户界面也并不可少。一个软件的功能不管多么优秀,但是没有提供友好的界面来让用户操作,将很难吸引到最终用户。

Android提供了大量的UI组件,开发者按照一定规律把这些UI组件组合在一起,形成一个优秀的图形用户界面,再通过Android提供的事件响应机制,让这些组件可以响应用户的点击、拖动,最终完成用户的交互操作。

Android应用的绝大部分UI组件都放在android.widget包及其子包、android.view包机器子包中并且都继承了View类。

View还有一个子类ViewGroup,ViewGroup通常作为其他组件的容器来使用,ViewGroup除了可以放其他组件,也可以放另外一个ViewGroup,所以Android的所有组件都是建立在View、ViewGroup基础上的。

View的直接子类、间接子类包含常见的Button、CheckBox、EditText、TextView等组件。

GroupView的子类通常用来作为容器,例如各种布局管理器

View类的XML属性、相关方法以及说明

XML 属性

相关方法

说明

android:alpha

setAlpha(float)

设置该组件的透明度

android:background

setBackgroundResource(int)

设置该组件的背景颜色

android:clickable

setClickable(boolean)

设置该组件是否可以激发单击事件

android:contentDescription

setContentDescription(CharSequence)

设置该组件的主要描述信息

android:drawingCacheQuality

setDrawingCacheQuality(iint)

设置该组件所使用的绘制缓存的质量

android:fadeScrollbars

setScrollbarFadingEnabled(boolean)

当不使用该组件的滚动条时,是否淡出显示滚动条

android:fadingEdge

setVerticalFadingEdgeEnabled(boolean)

设置滚动该组件时组件边界是否使用淡出效果

android:fadingEdgeLength

getVerticalFadingEdgeLength()

设置淡出边界的长度

android:focusable

setFocusable(boolean)

设置组件是否可以得到焦点

android:focusableInTouchMode

setFocusableInTouchMode(boolean)

设置该组件在触摸模式下是否可以得到焦点

android:id

setId(int)

设置该组件的唯一标识。Java 代码中可以通过 findViewById 来获取它

android:isScrollContainer

setScrollContainer(boolean)

设置该组件是否作为可滚动容器使用

android:keepScreenOn

setKeepScreenOn(boolean)

设置该组件是否会强制手机屏幕一直打开

android:longClickable

setLongClickable(boolean)

设置该组件是否可以响应长单击事件

android:minHeight

setMinimumHeight(int)

设置该组件的最小高度

android:minWidth

setMinimumWidtht(int)

设置该组件的最小宽度

android:nextFocusDown

SetNextFocusDownId(int)

设置焦点在该组件上,且按向下键时获得焦点的组件 ID

android:nextFocusLeft

setNextFocusLeftId(int)

设置焦点在该组件上,且按向左键时获得焦点的组件 ID

android:nextFocusRight

setNextFocusRightId(int)

设置焦点在该组件上,且按向右键时获得焦点的组件 ID

android:nextFocusUp

setNextFocusUpId(int)

设置焦点在该组件上,且按向上键时获得焦点的组件 ID

android:onClick

 

为该组件的单击事件绑定监听器

android:padding

setPadding(int,int,int,int)

在组件的四边设置填充区域

android:paddingLeft

setPadding(int,int,int,int)

在组件的左边设置填充区域

android:paddingTop

setPadding(int,int,int,int)

在组件的上边设置填充区域

android:paddingRight

setPadding(int,int,int,int)

在组件的右边设置填充区域

android:paddingBottom

setPadding(int,int,int,int)

在组件的下边设置填充区域

android:rotation

setRotation(float)

设置该组件旋转的角度

android:rotationX

setRotationX(float)

设置该组件绕X 轴旋转的角度

android:rotationY

setRotationY(float)

设置该组件绕Y 轴旋转的角度

android:saveEnabled

setSaveEnabled(boolean)

如果设置为false ,那当该组件被冻结时不会保存它的状态

android:scaleX

setScaleX(float)

设置该组件在水平方向的缩放比

android:scaleY

setScaleY(float)

设置该组件在垂直方向的缩放比

android:scrollX

 

该组件初始化后的水平滚动偏移

android:scrollY

 

该组件初始化后的垂直滚动偏移

android:scrollbarAlwaysDrawHorizontalTrack

 

设置该组件是否总是显示水平滚动条的轨迹

android:scrollbarAlwaysDrawVerticalTrack

 

设置该组件是否总是显示垂直滚动条的轨迹

android:scrollbarDefaultDelayBeforeFade

setScrollbarDefaultDelayBeforeFade(int)

设置滚动条在淡出隐藏之前延迟多少毫秒

android:scrollbarFadeDuration

setScrollbarFadeDuration(int)

设置滚动条淡出隐藏过程需要多少秒

android:scrollbarSize

setScrollbarSize(int)

设置垂直滚动条的宽度和水平滚动条的高度

android:scrollbarStyle

setScrollbarStyle(int)

设置滚动条的风格和位置。该属性支持如下属性:

insideOverlay

insideInset

OutsideOverlay

OutsideInset

android:scrollbarThumbHorizontal

 

设置该组件的水平滚动条的滑块对应的Drawable 对象

android:scrollbarThumbVertical

 

设置该组件的垂直滚动条的滑块对应的Drawable 对象

android:scrollbarTrackHorizontal

 

设置该组件的水平滚动条的轨道对应的Drawable 对象

android:scrollbarTrackVertical

 

设置该组件的垂直滚动条的轨道对应的Drawable 对象

android:scrollbars

 

定义该组件滚动时显示几个滚动条,该属性支持如下属性值。

none :不显示滚动条

horizont :显示水平滚动条

vertical :显示垂直滚动条

android:soundEffectsEnabled

setSoundEffectsEnabled(boolean)

设置该组件被单击时是否使用音效

android:tag

 

为该组件设置一个字符串类型的tag 值。接下来可通过 View 的 getTag() 获取该字符串,或通过 findViewWithTag() 查找该组件

android:transformPivotX

setPivotX(float)

设置该组件旋转时旋转中心的 X 坐标

android:transformPivotY

setPivotY(float)

设置该组件旋转时旋转中心的 Y 坐标

android:translationX

setTranslationX(float)

设置该组件在X 方向上位移

android:translationY

setTranslationY(float)

设置该组件在Y 方向上位移

android:

setVisibility(int)

设置该组件是否可见

Android笔记(六) Android中的组件的更多相关文章

  1. Android 笔记之 Android 系统架构

    Android笔记之Android系统架构 h2{ color: #4abcde; } a{ color: blue; text-decoration: none; } a:hover{ color: ...

  2. Android笔记(六十六) android中的动画——XML文件定义属性动画

    除了直接在java代码中定义动画之外,还可以使用xml文件定义动画,以便重用. 如果想要使用XML来编写动画,首先要在res目录下面新建一个animator文件夹,所有属性动画的XML文件都应该存放在 ...

  3. Android笔记(六十三) android中的动画——逐帧动画( frame-by-frame animation)

    就好像演电影一样,播放实现准备好的图片,来实现动画效果. 逐帧动画需要用到AnimationDrawable类,该类主要用于创建一个逐帧动画,然后我们把这个动画设置为view的背景即可. androi ...

  4. Android笔记(六十九) 仿微信界面(一)

          综合之前的Fragment和自定义组件的知识,实现微信界面 MainActivity.java package cn.lixyz.test; import android.app.Acti ...

  5. Android笔记(六十七) 自定义控件

    实际编程中,系统提供的控件往往无法满足我们的需求,一来是样子丑陋,二来是一些复杂的组合需要多次使用的话,每次都写一堆控件的组合会很耗费时间,所以我们将这些组件的组合自定义为一个新的控件,以后使用的时候 ...

  6. Android笔记(六十八) Fragment总结

    Fragment的产生: 为了适应各种尺寸的屏幕,谷歌推出Fragment,可以把Fragment成Activity的一个组成部分,它拥有自己的生命周期.可以接收并处理用户的各种事件,还可以动态的增删 ...

  7. Android笔记(六十二)网络框架volley

    什么是Volley 很多时候,我们的APP都需要用到网络技术,使用HTTP协议来发送接收数据,谷歌推出了一个网络框架——volley,该框架适合进行数据量不大,但通信频繁的网络操作. 它的优点: (1 ...

  8. vue学习笔记(九)vue-cli中的组件通信

    前言 在上一篇博客vue学习笔记(八)组件校验&通信中,我们学会了vue中组件的校验和父组件向子组件传递信息以及子组件通知父组件(父子组件通信),上一篇博客也提到那是对组件内容的刚刚开始,而本 ...

  9. Android笔记: Android版本号

    由于有2套版本号 总是对应不准 记下来做过标记 Android 4.3 ----18 Android 4.2---17 Android 4.1---16 Android 4.0.3---15Andro ...

  10. Android笔记(六十五) android中的动画——属性动画(propertyanimation)

    补间动画只能定义起始和结束两个帧在“透明度”.“旋转”.“倾斜”.“位移”4个方面的变化,逐帧动画也只能是播放多个图片,无法满足我们日常复杂的动画需求,所以谷歌在3.0开始,推出了属性动画(prope ...

随机推荐

  1. ovs 数据包的处理过程

    Openvswitch的内核模块openvswitch.ko会在网卡上注册一个函数netdev_frame_hook,每当有网络包到达网卡的时候,这个函数就会被调用. static struct sk ...

  2. Andrew Ng机器学习课程7

    回顾 通过定义训练集S={(x(i),y(i));i=1,2,...,m}与线性决策平面(w,b)之间的function margin γ^和geometric margin γ .好的分类决策平面特 ...

  3. 关于tornado的raise gen.Retuen()

    raise gen.Return(response.body)在python3.3以后作用相当于return, 在python3.3之前作用是返回一个异常值, 和返回一个value python 3. ...

  4. Bayesian machine learning

    from: http://www.metacademy.org/roadmaps/rgrosse/bayesian_machine_learning Created by: Roger Grosse( ...

  5. python开发【学习目录】:目录

    python开发[学习目录]:目录 Python开发:环境搭建(python3.PyCharm) Python开发[第一篇]:初识Python Python开发[第二篇]:Python基础知识 Pyt ...

  6. apache 代理配置

    apache 2.4.6版本 <VirtualHost *:8080> ServerName 21.12.13.146 DocumentRoot /root/gbhu ErrorLog / ...

  7. python 2.7 环境配置

    原文地址:Python 2.7的安装(64位win10) Python 2.7.12 下载地址:https://www.python.org/downloads/ 安装路径D:\Program Fil ...

  8. Python之匿名函数使用示例

    #!/usr/bin/env python # -*- coding:utf8 -*- # #匿名函数 # y = lambda x:x+1 # print(y(10)) name = 'AK' #一 ...

  9. 织梦/dedecms采集怎么去除a标签

    dedecms采集去除a标签代码 DedeCMS采集规则-过滤-替换-技巧2009-01-14 15:491.采集去除链接[Copy to clipboard]CODE:{dede:trim}]*)& ...

  10. 元组的简单介绍——参考Python编程从入门到实践

    元组 用于存储一系列不可修改的元素 1. 元组的定义 dimensions = (200, 50) # 定义一个元组,即将元素用圆括号括起来 print(dimensions[0]) # 打印元组中的 ...