android各种组件的监听器
《一》Spinner(旋转按钮或下拉列表):设置监听器为:setOnItemSelectedListener
设置动画效果为:setOnTouchListener
适配器为:ArrayAdapter
《二》DatePicker( 一个选择年月日的日历布局视图): public void init (int year, int
monthOfYear, int
dayOfMonth,
DatePicker.OnDateChangedListener
onDateChangedListener)初始化状态。
(译者注:初始化年月日)
参数
year 初始年(译者注:注意使用new
Date()初始化年时,需要+1900,如下:date.getYear()
+
1900)
monthOfYear 初始月。
dayOfMonth 初始日。
onDateChangedListener 日期改变时通知用户的事件监听,可以为空(null)。
《三》TimePicker:(用于选择一天中时间的视图,支持 24小时及上午/下午模式。)设置监听器为:setOnTimeChangedListener
《四》ImageView:(显示任意图像,例如图标。ImageView类可以加载各种来源的图片(如资源或图片库))
设置监听器为:setOnClickListener
《五》Button:(代表一个普通按钮部件)设置监听器为:setOnClickListener
《六》在RelativeLayout布局中让组件水平居中显示的方法:
Android:layout_width="wrap_content" 和 android:layout_centerHorizontal="true"
相对布局中UI控件没有android:layout_gravity 属性
android:gravity 值是指UI控件本身内容,android:layout_gravity 值是相对于父Layout的位置,
Android中常用的布局就是 LinearLayout 和 RelativeLayout
开发应用时,建议使用相对布局,因为能够更好的适应多屏幕尺寸,可以方便使UI控件居中,置顶等。
android:gravity和android:layout_gravity 的区别:
android中有很多类似android:gravity和android:layout_gravity属性,很相似。开始时候总用混,后来查了一下。原来这种像“android:layout_gravity”前面有“layout"的属性其实是相对与它的父元素说的,说明元素在父元素的位置。而像android:gravity这样前面没有“layout”的属性,是对元素本身说的!
gravity 这个英文单词是重心的意思,在这里就表示停靠位置的意思。
android:layout_gravity 和 android:gravity 的区别
从名字上可以看到,android:gravity是对元素本身说的,元素本身的文本显示在什么地方靠这个属性设置,不过不设置默认是在左侧的。
android:layout_gravity是相对与它的父元素说的,说明元素显示在父元素的什么位置。
比如说button: android:layout_gravity 表示按钮在界面上的位置。 android:gravity表示button上的字在button上的位置。
可选值
这两个属性可选的值有:top、bottom、left、right、center_vertical、fill_vertical、center_horizontal、fill_horizontal、center、fill、clip_vertical。
而且这些属性是可以多选的,用“|”分开。
默认这个的值是:Gravity.LEFT
简单记忆 : horizontal 都是操作的水平方向,即横向, vertical 都是炒作的垂直方向,即纵向。
对于LinearLayout何时生效的问题
对于 LinearLayout
当 android:orientation="vertical" 时, 只有水平方向的设置才起作用,垂直方向的设置不起作用。即:left,right,center_horizontal 是生效的。
当 android:orientation="horizontal" 时, 只有垂直方向的设置才起作用,水平方向的设置不起作用。即:top,bottom,center_vertical 是生效的。
《七》GridView (一个在平面上可显示多个条目的可滚动的视图组件):设置监听器:setOnItemClickListener
《八》ListView(通过竖滚动条查看的列表视图)。设置监听器:setOnItemClickListener
《九》RadioGroup(这个类用于创建一组按钮之间相互排斥的单选按钮组,在同一个单选按钮组中勾选一个按钮则会取消该组中其它已经勾
选的按钮的选中状态。) 设置监听器:OnCheckedChangeListener
《十》SlidingDrawer(滑动式抽屉)隐藏屏外的内容,并允许用户拖拽一个handle以显示隐藏的内容
设置监听器:setOnDrawerOpenListener,setOnDrawerCloseListener
《11》Android中万能的BaseAdapter(Spinner,ListView,GridView,Gallery)使用!
《12》RatingBar 用星型来显示等级评定 setOnRatingBarChangeListener
《13》注意:创建.xml文件是个字母必须是0-9或a-z(必须是小写)大写的不行。
《14》几种独立使用的视图组:WebView(网页视图),Spinner(旋转按钮),TextSwitcher(文本切换器),
ImageSwitcher(图像切换器)。
android各种组件的监听器的更多相关文章
- Android四大组件之一“广播”
前言 Android四大组件重要性已经不言而喻了,今天谈谈的是Android中的广播机制.在我们上学的时候,每个班级的教室里都会装有一个喇叭,这些喇叭都是接入到学校的广播室的,一旦有什么重要的通知,就 ...
- Android UI组件----ListView列表控件详解
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/3 ...
- Android 四大组件之“ BroadcastReceiver ”
前言 Android四大组件重要性已经不言而喻了,今天谈谈的是Android中的广播机制.在我们上学的时候,每个班级的教室里都会装有一个喇叭,这些喇叭都是接入到学校的广播室的,一旦有什么重要的通知,就 ...
- android四大组件--ContentProvider具体解释
一.相关ContentProvider概念解析: 1.ContentProvider简单介绍 在Android官方指出的Android的数据存储方式总共同拥有五种,各自是:Shared Prefere ...
- 【转】android四大组件--ContentProvider详解
一.相关ContentProvider概念解析: 1.ContentProvider简介在Android官方指出的Android的数据存储方式总共有五种,分别是:Shared Preferences. ...
- Android业务组件化之子模块SubModule的拆分以及它们之间的路由Router实现
前言: 前面分析了APP的现状以及业务组件化的一些探讨(Android业务组件化之现状分析与探讨),以及通信的桥梁Scheme的使用(Android业务组件化之URL Scheme使用),今天重点来聊 ...
- Android业务组件化之现状分析与探讨
前言: 从个人经历来说的话,从事APP开发这么多年来,所接触的APP的体积变得越来越大,业务的也变得越来越复杂,总来来说只有一句话:这是一个APP臃肿的时代!所以为了告别APP臃肿的时代,让我们进入一 ...
- Android业务组件化之URL Scheme使用
前言: 最近公司业务发展迅速,单一的项目工程不再适合公司发展需要,所以开始推进公司APP业务组件化,很荣幸自己能够牵头做这件事,经过研究实现组件化的通信方案通过URL Scheme,所以想着现在还是在 ...
- Android 四大组件 与 MVC 架构模式
作为一个刚从JAVA转过来的Android程序员总会思考android MVC是什么样的? 首先,我们必须得说Android追寻着MVC架构,那就得先说一下MVC是个啥东西! 总体而来说MVC不能说是 ...
随机推荐
- UIWebView加上safari风格前进后退按钮(转)
今天在写程序内打开网页的功能,写工具条的时候发现系统图标里面竟然没有后退按钮,,由于我这个是静态库工程,不可能自己弄张图上去,不然使用本库的时候还得附上图片,经过一下午的搜索,终于找到个比较靠谱的,这 ...
- Redis的README.md
This README is just a fast *quick start* document. You can find more detailed documentation at http: ...
- hadoop_百科
一.发音是:[hædu:p]. 二.简介:Hadoop是一个由Apache基金会所开发的分布式系统基础架构.用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力进行高速运算和存储 ...
- windows 下node版管理
linux 下的node 多版本管理有nvm,windows 下同样有这样的工具gnvm 安装步骤(无node环境): 1.下载并解压缩 gnvm.exe 保存到任意文件夹,并将此文件夹加入到环境变量 ...
- apple touch icon 大小总结
<!-- For Chrome for Android: --> <link rel="icon" sizes="192x192" href= ...
- Linux 进程创建二(execve和wait)
三:execve系统调用 int execve(const char *filename, char *const argv[],char *const envp[]); fork创建了一个新的进程, ...
- 编译包中的 Servlet
编译包中的类与编译其他的类没有什么大的不同.最简单的方法是让您的 java 文件保留完全限定路径,如上面提到的类,将被保留在 com.myorg 中.您还需要在 CLASSPATH 中添加该目录. 假 ...
- 探讨把一个元素从它所在的div 拖动到另一个div内的实现方法
故事背景: 接到一个新需求,要求用vue搞,主要是拖动实现布局,关键点有:单个组件拖动,一行多列里面的组件拖动, 单个组件可以拖入一行多列里, 单个组件的拖动好实现,关键是把一个组件拖动到另一个类似 ...
- php 正则匹配省市区
匹配指定前后内容中的值 如匹配/xxx-abc中的abc preg_match('/\/xxx-([^<]*)/i', $route, $matches); echo $matches[1]; ...
- 关于 JavaScript 学习 —— 好的博客或者网站推荐
作者:Tw93链接:https://www.zhihu.com/question/19651401/answer/46211739来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...