如何利用layoutinflateror实例化单个列表项

SimpleCD | 《伟谷州立大学开放课程 :Android应用程序开发》(Open Valley course : Developing Android Applications) [中英字幕][oCourse][开放式课程]更新完毕[MP4]
《伟谷州立大学开放课程 :Android应用程序开发》(Open Valley course : Developing Android Applications) [中英字幕][oCourse][开放式课程]更新完毕[MP4]
xupei199106.vc
勤劳的发布者
<td align="center" class="post2" title=".1 MB
<td align="center" class="post" title=".6 MB
<td align="center" class="post2" title=".5 MB
<td align="center" class="post" title=".5 MB
<td align="center" class="post2" title=".0 MB
<td align="center" class="post" title=".1 MB
<td align="center" class="post2" title=".6 MB
<td align="center" class="post" title=".5 MB
试试看在本站搜索相关资源
试试看在本站助人为乐小组请求帮助
本资源转载自verycd,试试看求发布者的帮助
文字语言: 简体中文,英文
地区: 美国
对白语言: 英语
中文名: 伟谷州立大学开放课程 :Android应用程序开发
英文名: Open Valley course : Developing Android Applications
资源格式: MP4
发行日期: 2012年
版本: [中英字幕][oCourse][开放式课程]更新完毕
简介: 【学校】伟谷州立大学(GVSU)是美国密歇根领先的公立综合性大学之一,成立于1960年,主校区面积5.1平方公里,拥有23,500多名学生,提供商学、教育学、医学等100种以上学术领域的学士和硕士课程,特别在机械、电器、电脑工程等工学领域的建树非凡。连续九年被美国的学术研究和评估公司评为「美国一百所物超所值大学」之一。【老师】 Engelsma & Dulimarta&Jonathan Engelsma是伟谷州立大学计算学院助理教授,1993年获得密歇根州立大学博士学位,拥有20年行业经验,包括16年在摩托罗拉的研发经验。Hans Dulimarta是伟谷州立大学计算信息学院副教授,1994年获得密歇根州立大学博士学位,主要研究方向是计算机图形和手机应用。&【课程】安卓移动平台自2007年11月开放源码以来,吸引了成千上万的开发者,Android Market有将近7万个移动应用及10亿次下载。如今,超过60种大厂家智能手机使用安卓平台。本教程将通过一个实际的应用程序例子,讲解安卓平台的基本知识,告诉学生如何编写安卓平台的应用程序。【分集介绍】第一讲 安卓应用开发介绍这一讲概述了一些概念性内容,包括:安卓平台结构,Dalvik虚拟机,安卓关键构件块:活动、服务、广播接收器、内容提供器、意图,以及活动的生命周期。Module 1: An over view the Android platform archiecture, the Dalvik virtual machines, identification of the key Android building blocks: Activities, Services, Broadcast Receivers, Content Providers, Intents, and the Activity lifecycle.
Duration 27:18.第二讲 Hello World这一讲首先代领学员快速过了一遍安卓开发环境搭建。然后编写了第一个Hello World应用程序,并详细剖析了程序的内部结构。最后用模拟器模拟运行了安卓程序,并讲解如何在电脑上进行调试。Module 2: Whirlwind tour of setting up your Android development environment.
Your first “hello world” Android app, how to emulate and debug Android applications on your desktop.
Duration 30:13.第三讲 用户界面基础这一讲是用户界面(UI)的基础,讲解了View(视图)、ViewGroup(视图组)、Layout(布局)和Widget(小工具)。将安卓的UI概念同Java Swing概念进行了对比。并在Hello World的基础上,编写了交互性更强的程序,并讲解了程序代码。Module 3: Android user interface basics.
Views, viewgroups, layouts, and widgets.
A brief discussion comparing Android UI concepts to the potentially more familiar Java Swing/AWT concepts.
Revisiting the “hello world” app from the previous module and making it interactive. Duration 29:47.第四讲 网络数据获取和显示移动设备应用程序最有趣的地方就是获取网络数据并进行交互。这一讲讲解了移动设备程序中面临的各种问题和挑战,并介绍了相应的应对策略。然后这一讲将前面的程序同推特网络服务整合在一起,形成了功能更强的程序,并讲解了程序代码。Module 4: Most interesting mobile apps fetch and interact with data stored in the cloud.
In this module we present and discuss guidelines for dealing with various challenges that networked mobile apps face.
To demonstrate these concepts, we revisit our running sample program and integrate with
the Twitter RESTful web services to search for and display interesting tweets. Duration 25:23.第五讲 用户界面改进这一讲进一步改进了之前的项目,使用了一些更进阶的技术。这里首先强调了RelativeLayout(相对布局)的优势,然后详细讲解了新版的应用程序代码。这一讲还演示了如何利用LayoutInflator(布局扩展器)实例化单个列表项。Module 5: In this modules we look at ways to jazz up our sample program by using more advanced techniques.
In particular we discuss and demonstrate the importance of using RelativeLayouts.
We also show how LayoutInflators are used to instantiate individual list items via an XML description of the item's layout. Duration 22:38.第六讲 进阶主题这是系列教程的最后一讲,讲到如何加载用户图像,以及UI线程和后台线程之间的分开处理。讲了对推文中@提到、#标签等内容的链接化处理。这一讲最终给出了系列教程的终极版应用程序,并分析讲解了代码。Module 6: We complete the tutorial by discussing a number of more advanced topics.
In particular we show how to handle the special markup found in the tweet text (urls, @mentions, #hashtages, etc.).
We also show how to efficiently download and display the twitter user thumbnails for each tweet.
Duration 30:00.
xupei199106.vc推荐的资源提问回答都赚钱
> 问题详情
为了能在列表框中利用Ctrl和Shift键进行多个列表项的选择,则应将列表框的Multiselect属性设置为_
悬赏:0&&答案豆&&&&提问人:匿名网友&&&&提问收益:0.00答案豆&&&&&&
为了能在列表框中利用Ctrl和Shift键进行多个列表项的选择,则应将列表框的Multiselect属性设置为______ 。A.0B.1C.2D.3请帮忙给出正确答案和分析,谢谢!
发布时间:&&截止时间:
网友回答&(共0条)
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&6.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&3.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&3.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&3.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&3.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&3.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&3.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&1.00元收益
回答悬赏问题预计能赚取&5.00元收益
回答悬赏问题预计能赚取&3.00元收益
回答悬赏问题预计能赚取&12.00元收益
为你请到的专家
&&&&采纳率:76%&&&
&&采纳率:97%&&&
&&采纳率:88%&&&
&&&&采纳率:25%&&&
&&采纳率:90%&&&
[] [] [] [] [] [] [] [] [] [] [] []
请先输入下方的验证码查看最佳答案TEL:(1 FAX:(8
菜单的具体介绍
7.1.&ContextMenu
7.1.1.概述
由一小项目组人来断定什么是公理,什么不是公理,如许的权力是真实抑或子虚的呢?在今天以前,它是真实的,但从今今后,它在我国将永远化为陈迹。因为比任何一个国王都要强大的一种力量,已经活着界上的这块惟一真正献身于的地盘上崛起。凡是有眼睛的都能看见,凡是有耳朵的都能闻声:旌旗在飘荡,大军在进步。尽管有人会吹毛求疵,有人会嘲笑唠叨,然则对不起他仍将登上王位,他仍将举起王笏;大肠告小肠的人将获得的是面包,衣不蔽体的人将获得衣服,绝望的眼睛将闪出的光线,骗子贵族将要衰亡,名正言顺的主宰将要登基。Android中的高低文菜单类&#20284;于Windows中的高低文菜单,Windows中的高低文菜单常称为:鼠标右击后的弹出菜单。
真谛像颗宝石,固然不该涂抹色彩,却可放在显眼的处所,使其发明更美好的名望。Android的高低文菜单的操纵类&#20284;于列表项中的长按菜单项的事务响应。
Android用ContextMenu类经管高低文菜单。
7.1.2.常用办法
1、Activity.onCreateContextMenu(ContextMenu&menu,View&source,&ContextMenu.
ContexMenuInfo&menuInfo);
感化:创建高低文菜单对象。
参数-menu:当前的高低文菜单。
参数-source:当前的view对象,即被长按的控件。
参数-menuInfo:没有任何办法的接口,即ContexMenuInfo是一个空接口。若控件是ListView(后面将介绍到该控件)这类的有多个选项的列表,则该参数可以获得列表中被长按项的索引&#20540;。
2、add(int);
3、add(CharSequence);
感化:为高低文菜单添加一个菜单项,&参数可所以字符日串,也可所以资料中定义的字符串索引&#20540;。
【示例代码】
&&&&@Override
&&&&public&void&onCreateContextMenu(ContextMenu&menu,&View&v,
&&&&ContextMenuInfo&menuInfo)&{
&&&&super.onCreateContextMenu(menu,&v,&menuInfo);
&&&&menu.add(0,0,0,&&);//添加一个题目为的菜单项
&&&&menu.add(0,1,0,&&);//添加一个题目为的菜单项
&&&&menu.add(0,2,0,&&);//添加一个题目为的菜单项
&&&&menu.add(0,3,0,&query&);//添加一个题目为query的菜单项
4、registerForContextMenu(resId);
感化:为指定控件注册高低文菜单,参数resId是控件的资料索引&#20540;。
【示例代码】
TextView&tv=(TextView)findViewById(R.id.tv);
&&&&registerForContextMenu(tv);//给tv控件注册高低文菜单
5、public&boolean&onContextItemSelected(MenuItem&item)
感化:重写高低文菜单的被点击的事务响应法度.
【示例代码】
//高低文菜单项选择的响应事务
@Override
public&boolean&onContextItemSelected(MenuItem&item)&{
switch(item.getItemId()){
case&R.id.miUpdate://若菜单项是miUpdate
Toast.makeText(this,&getText(R.string.),&3000).show();
case&R.id.miInsert:&//若菜单项是miInsert
Toast.makeText(this,&R.string.,&3000).show();
case&R.id.miDelete:&//若菜单项是miDelete
Toast.makeText(this,&R.string.,&3000).show();
return&super.onContextItemSelected(item);
申明:以上代码中的item是高低文菜单的当前被点击的菜单项,下面用switch语句对该菜单项的资料索引&#20540;&(item.getItem())进行断定,R.id.miUpdate是资料中定义的高低文菜单项的资料索引&#20540;。
7.1.3.应用资料中定义的高低文菜单
步调1、在项目标res文件夹下创建menu文件夹;
步调2、在menu文件夹下创建高低文菜单资料文件,如:context_menu.xml,该文件内容如下所示:
&?xml&version=&1.0&&encoding=&utf-8&?&
&menu&xmlns:android=&/apk/res/android&&
android:id=&@&#43;id/miUpdate&
android:title=&@string/&/&
android:id=&@&#43;id/miInsert&
android:title=&@string/&/&
步调3、在代码中解析以上资料文件,示例代码如下:
&&&&//创建高低文菜单
&&&&@Override
&&&&public&void&onCreateContextMenu(ContextMenu&menu,&View&v,
&&&&ContextMenuInfo&menuInfo)&{
&&&&super.onCreateContextMenu(menu,&v,&menuInfo);
&&&&//创建菜单解析器对象
&&&&MenuInflater&inflator=getMenuInflater();
&&&&//解析资料中定义的菜单
&&&&inflator.inflate(R.menu.context_menu,&menu);
&&&&//设置高低文菜单的图标
&&&&menu.setHeaderIcon(R.drawable.icon);
&&&&//设置高低文菜单的题目
&&&&menu.setHeaderTitle(R.string.cmTitle);
7.1.4.OptionMenu与ContextMenu的差别
1、选项菜单由onCreateOpitionsMenu()办法创建,单击menu按钮,与Activity绑定。
2、高低文菜单由onCreateContextMenu()办法创建,与某个View绑定。
3、每单击一次View,与该View绑定的高低文菜单的onCreateOptionsMenu都邑履行一次。而选项菜单只会履行一次。
7.2.CheckBox控件
7.2.1.概述
复选框是UI中常用的控件,复选框的类名:CheckBox,该类持续自Button。如图-1所示:
7.2.2.常用属性
Checked:在资料文件中定义checked&#20540;为true,则该checkBox控件为选中状况,如图1中题目为音乐的checkBox控件。
提示:checked的默认&#20540;是false。
【示例代码】
7.2.3.常用办法
isChecked();
感化:返回该控件是否被选中,若选中则返回&#20540;为true,不然为false。
【示例代码】
CheckBox&checkBox=(CheckBox)findViewById(resId);
If(checkbox.isChecked()){
Toast.makeText(this,”该控件被选中”,3000).show();
Toast.makeText(this,”该控件未被选中”,3000).show();
7.3.&OnCheckedChangeListener接口
7.3.1.概述
该接口负责CheckBox等控件的选中状况的变更。
7.3.2.常用办法
void&onCheckedChanged(CompoundButton&buttonView,&boolean&isChecked);
感化:控件选中状况的变更。
参数-buttonView:的控件对象;
参数-isChecked:若该控件处于选中状况,&#20540;为true,不然是false。
【示例代码】显示图-2结果,被选中图-2中某个CheckBox控件时,在窗口中显示该控件的题目加上is&ed字符串。
//MainAct类实现OnCheckedChangeListener接口
public&class&MainAct&extends&Activity&implements&OnCheckedChangeListener{
&&&&CheckBox&mChkMusic,mChkSport,mChkReadBook,mChkCollectMail;
&&&&String&mText=&&;
&&&&@Override
&&&&public&void&onCreate(Bundle&savedInstanceState)&{
&&&&&&&&super.onCreate(savedInstanceState);
&&&&&&&&setContentView(R.layout.main);
&&&//创建图-2中的两个控件
&&&&&&&&mChkCollectMail=(CheckBox)findViewById(R.id.chkCollectMail);
&&&&&&&&mChkReadBook=(CheckBox)findViewById(R.id.chkReadBook);
&&&//注册这两个控件的onCheckedChanged事务
&&&&&&&&mChkCollectMail.setOnCheckedChangeListener(this);
&&&&&&&&mChkReadBook.setOnCheckedChangeListener(this);
//实现OnCheckedChangeListener.&OnCheckedChanged()办法
@Override
public&void&onCheckedChanged(CompoundButton&buttonView,&boolean&isChecked)&{
switch(buttonView.getId()){
case&R.id.chkReadBook://这是图-2中的read&book控件的资料索引
case&R.id.chkCollectMail://这是图-2中的collect&mail控件的资料索引&#20540;
if(isChecked){
mText=buttonView.getText().toString();
Toast.makeText(MainAct.this,&mText&#43;&&is&ed&,&5000).show();
7.4.RadionButton控件
7.4.1.概述
单选按钮是UI中常用的元素,类名:RadioButton,如图-3所示:
7.4.2.常用属性
Checked:控件是否处于选中状况
7.4.3.【示例代码】
以下代码定义了图-3中两个RadioButton控件的显示样式:
&&RadioButton
&&&& android:id=&@&#43;id/rbMale&
&&&& android:text=&男&
&&&& android:layout_width=&wrap_content&
&&&& android:layout_height=&wrap_content&
&&&& android:checked=&true&/&
&RadioButton
&&&& android:id=&@&#43;id/rbFeMale&
&&&& android:text=&女&
&&&& android:layout_width=&wrap_content&
&&&& android:layout_height=&wrap_content&/&&
7.5.RadionGroup控件
7.5.1.概述
以上代码中的两个控件还不克不及形成互斥的结果,即男和女两个控件可以同时处于选中状况。在Android中必须用RadioGroup控件将一组须要互斥的RadioButton包含起来。
7.5.2.【示例代码】
将以上代码改进,形成男和女两个RadioButton互斥(即不克不及同时处于选中状况)的结果,如下代码所示:
&RadioGroup
&&&&android:layout_width=&fill_parent&&
&&&&android:layout_height=&wrap_content&&&&
&&&&&RadioButton
&&&& android:id=&@&#43;id/rbMale&
&&&& android:text=&男&
&&&& android:layout_width=&wrap_content&
&&&& android:layout_height=&wrap_content&
&&&& android:checked=&true&/&
&&&&&&RadioButton
&&&& android:id=&@&#43;id/rbFeMale&
&&&& android:text=&女&
&&&& android:layout_width=&wrap_content&
&&&& android:layout_height=&wrap_content&/&&
&/RadioGroup&
7.6.ProgressBar控件
7.6.1.概述
进度条(ProgressBar)是UI中很是实用的控件,类名:ProgressBar,用于动态显示某个斗劲耗时操纵的进度,可避免因操纵时候长,应用户感触感染法度落空了响应,从而进步用户的应用体验。如图-4所示:
图-4靠上项目组显示了一个默认的进度条样式(络续迁移转变的圆圈),该进度条没有进度,用于显示在无法断定进度的操纵。
图-4下面显示了一个程度进度条,该进度条上方有一个TextView控件显示该进度条的进度&#20540;今朝是22%
7.6.2.常用属性
设置进度条的最大&#20540;
设置已完成的进度&#20540;
progressDrawable
设置进度条的轨道的绘制情势
progressBarStyle
设置进度条样式
progressBarSytleHorizontal
程度进度条样式
progressBarStyleLarge
大进度条样式
proressBarStyleSmall
小进度条样式
progressBar的style有如下&#20540;:
Horizontal
程度进度条
络续跳跃、扭转的进度条
Large.Inverse
络续跳跃、扭转的大进度条
Small.Inverse
络续跳跃、扭转的小进度条
1、以上的style属性&#20540;前面都要加上如下的前缀:
@android:style/Widget.ProgressBar.,例如:
@android:style/Widget.ProgressBar.Large:大进度条
2、Widget:小部件,我们所称的UI中的控件,也称为小部件。
示例代码:
以下代码定义了图-4中两个进度条控件:
&!--&默认样式的进度条&--&
&ProgressBar
&&&&android:layout_width=&wrap_content&&
&&&&android:layout_height=&wrap_content&/&
&!--&程度样式的进度条&--&
&ProgressBar
android:id=&@&#43;id/pb&
android:layout_width=&fill_parent&
android:layout_height=&wrap_content&
style=&@android:style/Widget.ProgressBar.Horizontal&
android:max=&100&/&
7.7.SeekBar控件
7.7.1.概述
拖动条控件,类名:SeekBar,与进度条在外观上相&#20284;,并且容许用户经由过程拖动滑块来改变滑块的&#20540;。中调剂屏幕亮度、音量的用的就是SeekBar。SeekBar控件如图-7所示:
7.7.2.常用属性
SeekBar是ProgressBar的间接子类,是以SeekBar的属性拜见ProgressBar的属性列表
7.7.3.示例代码
以下代码定义了图-7的控件样式:
android:id=&@&#43;id/sb&&&
&&&&android:layout_width=&fill_parent&&
&&&&android:layout_height=&wrap_content&&
&&&&android:max=&100&
&&&&android:progress=&10&/&
申明:max属性:默示全部控件的最大长度&#20540;。Progress默示今朝滑块所处的地位的&#20540;是10。
7.8.OnSeekBarChangeListener接口
7.8.1.概述
该接口负责SeekBar控件的的滑块移动。
7.8.2.常用办法
1、void&onProgressChanged(SeekBar&seekBar,&int&progress,&boolean&User);
感化:滑块进度&#20540;产生改变时,触发本办法。
参数-seekBar:当前的SeekBard对象。
参数-progress:滑块的进度&#20540;。
参数-User:用户是否拖动了滑块,true:是,false;否。
2、void&onStartTrackingTouch(SeekBar&seekBar);
感化:开端移动滑块时,触发本办法,滑块移动中本办法不再履行。
3、void&onStopTrackingTouch(SeekBar&seekBar);
感化:停止移动滑块时,触发本办法。
7.8.3.【示例代码】
//实现OnSeekBarChangeListener接口
public&class&MainAct&extends&Activity&implements&OnSeekBarChangeListener{
&&&&SeekBar&sb;
&&&&int&mProgress;//存放滑块进度&#20540;
&&&&@Override
&&&&public&void&onCreate(Bundle&savedInstanceState)&{
&&&&&&&&super.onCreate(savedInstanceState);
&&&&&&&&setContentView(R.layout.main);
&&&&&&&&sb=(SeekBar)findViewById(R.id.sb);//创建滑块对象
&&&&&&&&//注册进度条改变的事务
&&&&&&&&sb.setOnSeekBarChangeListener(this);
&&&&//实现onProgressChanged办法,进度条产生改变时触发该办法
@Override
public&void&onProgressChanged(SeekBar&seekBar,&int&progress,
boolean&User)&{
mProgress=//存放当前滑块的进度&#20540;
//实现onStartTrackingTouch办法,该办法在开端拖动进度条时触发
@Override
public&void&onStartTrackingTouch(SeekBar&seekBar)&{
Log.i(&SeekBar&,&begin&TrackingTouch&);
//实现onStopTrackingTouch办法,该办法在进度拖动时触发
@Override
public&void&onStopTrackingTouch(SeekBar&seekBar)&{
Log.i(&SeekBar&,&end&TrackingTouch&);
Log.i(&SeekBar&,&progress=&&#43;mProgress);
7.9.RatingBar控件
7.9.1.概述
星级评分控件,类名:RatingBar,与拖动条控件很相&#20284;,拖动条控件是经由过程拖动条上滑块来改变&#20540;。RatingBar是经由过程拖动来改变星级的&#20540;。如图-8所示:
7.9.2.常用属性
RatingBar是ProgressBar类的间接子类,属性可拜见ProgressBar控件的属性列表。以下是该控件独有的属性。
星的数量,如图-8中有4颗半星
星变更的步长,可所以小数,如0.5(每次增长或削减半颗星)
【示例代码】
以下代码定义了图-8中RatingBar的显示样式:
&RatingBar&
android:id=&@&#43;id/rb&
android:layout_width=&wrap_content&
android:layout_height=&wrap_content&
android:numStars=&4.5&
android:stepSize=&0.5&/&
7.10.OnRatingBarChangeListener接口
7.10.1.概述
该接口负责RatingBar控件的滑块移动。
7.10.2.常用办法
void&onRatingChanged(RatingBar&ratingBar,&float&rating,boolean&User)
感化:当RatingBar中的滑块移动时,触发本办法履行。
参数-ratingBar:当前的星级滑块对象。
参数-rating:当前星的个数。
参数-User:用户是否拖动了滑块,true:是,false;否。
7.10.3.【示例代码】
//实现OnRatingBarChangeListener接口
public&class&MainAct&extends&Activity&implements&OnRatingBarChangeListener{
&&&&RatingBar&mRatingBar;
&&&&TextView&mtvRatingBar;
&&&&@Override
&&&&public&void&onCreate(Bundle&savedInstanceState)&{
&&&&&&&&super.onCreate(savedInstanceState);
&&&&&&&&setContentView(R.layout.main);
&&&&&&&&//实例化mtvRatingBar控件,该控件负责显示星级控件中当前星的个数
&&&&&&&&mtvRatingBar=(TextView)findViewById(R.id.tvRagingBar);
&&&&&&&&//实例化星级控件
&&&&&&&&mRatingBar=(RatingBar)findViewById(R.id.rb);
&&&&&&&&//注册onRatingChanged事务
&&&&&&&&mRatingBar.setOnRatingBarChangeListener(this);
&&&&//实现onRatingChanged办法,该办法在RatingBar控件产生改变时触发
@Override
public&void&onRatingChanged(RatingBar&ratingBar,&float&rating,
boolean&User)&{
//在标签中显示今朝星的个数
mtvRatingBar.setText(&&&#43;mRatingBar.getRating());
7.11.DatePicker控件
7.11.1.概述
DatePicker(日期选择器)供用户选择日期。该控件如图-10所示:
图-10用以下xml代码定义:
7.11.2.常用办法
init(year,month,day,OndateChangedListener()):初始化控件中的年代日,并设置一个数据产生改变的响应事务。
7.12.&OnDateChangedListener接口
7.12.1.概述
该接口负责DatePicker控件中日期的变更。
7.12.2.常用办法
OndateChangedListener();
感化:DatePicker对象中的日期因用户的选择产生改变时,本领件被触发。
【示例代码】&
//实现OnDateChangedListener接口
public&class&MainAct&extends&Activity&implements&OnDateChangedListener,OnTimeChangedListener{
&&&&DatePicker&mDatePicker;//定义成员变量
&&&&TextView&mTvShowTime;//显示日期成果的标签
&&&&@Override
&&&&public&void&onCreate(Bundle&savedInstanceState)&{
&&&&&&&&super.onCreate(savedInstanceState);
&&&&&&&&setContentView(R.layout.main);
&&&&&&&&mTvShowTime=(TextView)findViewById(R.id.tvShowTime);
&&&&&&&&mDatePicker=(DatePicker)findViewById(R.id.datePicker);
&&&&&&&&//初始化mDatePicker
&&&&&mDatePicker.init(2011,&11,&5,&this);
//实现onDateChanged办法,日期改变时触发本办法
@Override
public&void&onDateChanged(DatePicker&view,&int&year,&int&monthOfYear,
int&dayOfMonth)&{
StringBuffer&sb=new&StringBuffer();
sb.append(year&#43;&年&).append(monthOfYear&#43;&月&)
.append(dayOfMonth&#43;&日&);
mTvShowTime.setText(sb.toString());//显示成果
7.13.TimePicker控件
7.13.1.概述
TimePicker控件负责选择时候。如图-11所示:
7.13.2.常用办法
1、getCurrentHour():获取小时。
2、getCurrentMinute():获取分钟。
7.14.&OnTimeChangedListener接口
7.14.1.概述
OnTimeChangedListener接口负责TimePicker控件中时候改变。
7.14.2.常用办法
void&onTimeChanged(TimePicker&view,&int&hourOfDay,&int&minute);
感化:当TimePicker中的时候产生改变时,触发本办法履行。
参数-view:当前的TimePicker对象。
参数-hourOfDay:小时。
参数-minute:分钟。
7.14.3.【示例代码】
以下代码实现是-12的结果,当单击TimePicker控件时,显示当前时候。
//实现OnTimeChangedListener接口
public&class&MainAct&extends&Activity&implements&OnTimeChangedListener{
&&&&TimePicker&mTimePicker;
&&&&TextView&mTvShowTime;
&&&&@Override
&&&&public&void&onCreate(Bundle&savedInstanceState)&{
&&&&&&&&super.onCreate(savedInstanceState);
&&&&&&&&setContentView(R.layout.main);
&&&&&&&&mTvShowTime=(TextView)findViewById(R.id.tvShowTime);
&&&&&&&&mTimePicker=(TimePicker)findViewById(R.id.timePicker);
&&&&&&&&//注册setOnTimeChangedListener事务响应法度
&&&&&&&&mTimePicker.setOnTimeChangedListener(this);&&&&&&&
&&&&//实现ontimeChanged办法
@Override
public&void&onTimeChanged(TimePicker&view,&int&hourOfDay,&int&minute)&{
String&text=hourOfDay&#43;&小时&&&#43;minute&#43;&分&;
Toast.makeText(this,&text,&3000).show();
7.15.DigitalClock控件
数字时钟,父类是TextView。
7.16.AnalogClock控件
模仿时钟,父类是View。如图-13所示:
定义该控件的xml代码如下所示:
&AnalogClock&
android:id=&@&#43;id/acClock&
android:layout_width=&wrap_content&
android:layout_height=&wrap_content&/&
7.17.常用技能
设置eclipse开辟景象中,类中的办在编辑区的右边框用雷同色彩标识,如图-14所示:
MainAct类中有三个办法:onDestory、onStart(),还有一个办法没有显示。在编辑区的右边框有三个蓝色的小矩形(称为标识表记标帜)。
(1)&单击图-14中右边框的第一个蓝色标识表记标帜,将定位至当onDestory()办法。
(2)&单击图-14中右边框的第二个蓝色标识表记标帜,将定位至onStart()办法。
提示:若一个文件中有多个类,并且两个类中有同名办法呈现,那么经由过程这种标识表记标帜可以便利地找到指定类的办法,不会呈现混合题目。&
标识表记标帜没色彩可以批改,以下介绍批改标识表记标帜色彩步调:
步调1、在编辑区的随便率性地位右击鼠标;
步调2、在弹出菜单中选择Preferences。
步调3、选择General―&Editors―&Text&Editors&―&Annotations-&occurrences,选择色彩,如图-15所示:
步调4、在弹出的色彩列表中选择色彩。
7.18.常见题目
1.&同样名称的类,在不合的包中,两个类若是同时应用,须要指定它的包名。
示例代码:
import&poundButton.OnCheckedChangeL
import&android.widget.RadioB
import&android.widget.RadioG
public&class&MainAct&extends&Activity&
implements&OnCheckedChangeListener,
android.widget.RadioGroup.OnCheckedChangeListener
以上代码中,标注(1)指向的接口是第一行(红框所指)的导包路径。
标注(2)指向的类与标注(1)雷同,但路径不合,是以在第二个接口前面要写明接口地点的包路径。如许Android才干正确区分两个同名接口。马克?吐温

我要回帖

更多关于 layoutsubviews 的文章

 

随机推荐