Android笔记(六) Android中的组件

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

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)


设置该组件是否可见

时间: 2024-08-26 10:34:14

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

Android笔记:java 中的数组

在与嵌入式设备通讯的过程中使用的socket通讯 获取的字节流,通常转换为字节数组,需要根据协议将字节数组拆分.对于有规律的重复拆分可以使用,由于java中不能像c中直接进行内存操作例如使用struct 内存拷贝可以直接实现,这里考虑的是借用数组拷贝的方式来实现. java数组复制参考 引自百度空间 同时参考 数组拷贝之java.lang.System.arraycopy和java.util.Arrays.copyOf方法 java数组复制的4种方式,java数组拷贝问题 JAVA数组的复制是引

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

除了直接在java代码中定义动画之外,还可以使用xml文件定义动画,以便重用. 如果想要使用XML来编写动画,首先要在res目录下面新建一个animator文件夹,所有属性动画的XML文件都应该存放在这个文件夹当中.然后在XML文件中我们一共可以使用如下三种标签: <animator>  对应代码中的ValueAnimator <objectAnimator>  对应代码中的ObjectAnimator <set>  对应代码中的AnimatorSet 使用XML设置动

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

就好像演电影一样,播放实现准备好的图片,来实现动画效果. 逐帧动画需要用到AnimationDrawable类,该类主要用于创建一个逐帧动画,然后我们把这个动画设置为view的背景即可. android提供两种方法为AnimationDrawable添加帧:XML定义和JAVA代码创建. XML 因为动画帧的资源需要是一个Drawable对象,所以需要把它放到Drawable目录下.在<animation-list>使用<item>来添加一帧 anima.xml <?xml

Android笔记六.深入理解Intent和IntentFilter(二)

深入理解Intent和IntentFiler(二) Jiangdg_VIP http://blog.csdn.net/u012637501 在上一篇文章中,我们比较详细学习了"Intent"的相关知识,现在将学习如何设置Intent对象的这些属性以及如何使用他们来启动组件.Intent对象是一组信息,我们可以通过设置其Action.Data.Category属性来指定启动哪个组件并完成什么样的动作(包含动作所需的数据). "意图"分为显示intent和隐式inten

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

实际编程中,系统提供的控件往往无法满足我们的需求,一来是样子丑陋,二来是一些复杂的组合需要多次使用的话,每次都写一堆控件的组合会很耗费时间,所以我们将这些组件的组合自定义为一个新的控件,以后使用的时候直接用该控件,方便又简单.最常见的例子就是软件中的titleTar 实现自定义控件的步骤: 1.设置控件的属性 2.实现我们的View 3.引用我们自定的View 官方文档:http://developer.android.com/training/custom-views/create-view.

自学Android笔记——在activity中使用intent

一.Intent介绍: Intent的中文意思是"意图,意向",在Android中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作.动作涉及数据.附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用.Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Service之间的交互.因此,可以将Intent理解为不同组件之间通信的"媒介&quo

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

什么是Volley 很多时候,我们的APP都需要用到网络技术,使用HTTP协议来发送接收数据,谷歌推出了一个网络框架——volley,该框架适合进行数据量不大,但通信频繁的网络操作. 它的优点: (1)默认Android2.3及以上基于HttpURLConnection,2.3以下使用基于HttpClient: (2)符合Http 缓存语义 的缓存机制(提供了默认的磁盘和内存等缓存): (3)请求队列的优先级排序: (4)提供多样的取消机制: (5)提供简便的图片加载工具(其实图片的加载才是我们

Android笔记(六十八) Fragment总结

Fragment的产生: 为了适应各种尺寸的屏幕,谷歌推出Fragment,可以把Fragment成Activity的一个组成部分,它拥有自己的生命周期.可以接收并处理用户的各种事件,还可以动态的增删改某个Fragment Fragment的使用 可以把Fragment当成普通的控件使用,直接写在布局文件中,然后新建一个继承自Fragment的类加载这个布局,然后在Activity的布局文件中直接引用这个Fragment,就是这么简单: MainActivity.java package com

【Android笔记】Fragment中显示高德地图

本文来自:fair-jm.iteye.com 转截请注明出处 官网的教程是在Activity下 在Fragment下在高德论坛找到一些方法 试了下可以显示 但是切换后总会有些问题 比如切换后就是新的了 切换后地图就不显示了 我这种方式可以在切换后保持地图状态 但是得限定屏幕为水平或者竖直 如果翻转的话也会报错 布局文件: 1 <?xml version="1.0" encoding="utf-8"?> 2 <RelativeLayout xmlns

【Android笔记】Android创建启动画面

每个Android应用启动之后都会出现一个Splash启动界面,显示产品的LOGO.公司的LOGO或者开发者信息.如果应用程序启动时间比较长,那么启动界面就是一个很好的东西,可以让用户耐心等待这段枯燥的时间. 1.制作Splash界面 突出产品LOGO,产品名称,产品主要特色: 注明产品的版本信息: 注明公司信息或者开发者信息: 背景图片,亦可以用背景颜色代替: 2.处理后台资源 大多数的Splash界面都是会等待一定时间,然后切换到下一个界面: 其实,在这段时间里,可以对系统状况进行检测,比如