老二牛车AndroidUI之常用控件

合集下载

Android常用控件

Android常用控件

《Android基础应用》Android常用控件⏹本章任务⏹使用Android开发使用时间组件⏹使用Android开发使用进度条组件⏹使用Android开发创建底部选项卡⏹本章目标⏹了解Android的组件层次结构⏹掌握常用的日期时间类控件⏹掌握常用的几个容器组件1.Android组件的层次结构UI组件都是View的子类,View有很多子类,它们之间存在树状的继承关系View及其子类结构图TextView及其子类结构图ViewGroup及其子类结构图其下的子类一般作为容器或布局来使用FrameLayout及其子类结构图其下的子类通常作为容器或布局来使用2.时间控件2.1日期时间选择器DatePicker组件可用于输入日期,TimePicker组件可用来选择时间,只能输入小时和分,默认12小时制DatePicker●使用onDateChangedListener监听器来获取用户的日期选择●使用init对组件进行初始化●使用getYear,getMonth,getDayOfMonth方法获得用户选择的年,月,日TimePicker●使用onTimeChangedListener监听器获取用户的时间选择●使用setIs24HourView设置是否以24小时制显示●使用getCurrentHour获得当前的小时数●使用getCurrentMinute获得当前的分钟数示例示例的实现结果2.2时钟组件AnalogClock组件用来以表盘的方式显示当前时间,该表只有时针和分针,DigitClock组件以数字的方式显示当前时间可以显示时分秒,由于DigitClock继承TextView,可以使用TextView 的属性示例示例的实现结果2.3 计时器组件Chronometer和DigitalClock 都继承TextView,但它不显示时间,它显示的是从某个起始时间开始,一共过去了多少时间默认情况下只能输出MM:SS或H:MM:SS的时间格式重要属性●android:format:定义时间的格式如:hh:mm:ss重要方法●setBase(long base):设置倒计时起始时间参数为SystemClock.elapsedRealtime()方法返回的值为当前时刻●setFormat(String format):设置显示时间的格式●start():开始计时●stop():停止计时●setOnChronometerTickListener(Chronometer.OnChronometerTickListener listener):当计时器改变时调用示例示例的实现结果练习——时间组件需求说明:日期时间选择器时钟组件计时器组件按照课件中示例图实施3.进度类组件3.1进度条组件当一个应用在后台执行时,前台界面就不会有什么信息,这时用户根本不知道程序是否在执行、执行进度如何、应用程序是否遇到错误终止等,这时需要使用进度条来提示用户后台程序执行的进度Android系统提供了两大类进度条样式●长形进度条●圆形进度条(大中小三种)默认是普通圆形进度条,是不确定Android进度条默认普通圆形ProgressBar大号圆形ProgressBar小号圆形ProgressBar示例3.2标题进度条进度条除了可以显示在Activity中外,还可以显示在标题中圆形进度条长方形进度条Array示例示例的实现结果3.3 可拖动的进度条组件SeekBar 控件其实就是一个高级点的进度条,就像我们在听歌,看电影用的播放器上的进度条一样,是可以拖动的,可以改变进度的一个进度条控件SeekBar 是ProgressBar 的子类,这个组件不需要设置sencondaryProgress 属性 事件接口OnSeekBarChangeListener 处理组件事件由以下三个方法● public void onStartTrackingTouch(SeekBar seekBar) 按下滑杆后触发● public void onProgressChanged(SeekBar seekBar, int progress,boolean fromUser) 动滑杆开始滑动时触发● public void onStopTrackingTouch(SeekBar seekBar) 松开滑杆时触发示例示例的实现结果3.4界面评分组件RatingBar是SeekBar和ProgressBar的扩展,用星星来评级如网上购物,对商家的产品和服务进行打分等常用属性●android:numStarts用于评分的五角星数量●android:rating当前的分数●android:stepSize分数的增长单位,默认是0.5事件接口OnRatingBarChangeListener处理组件事件● public void onRatingChanged(RatingBar ratingBar, float rating,boolean fromUser)示例示例的实现结果属性Style●用于为RatingBar设置不同的风格,一旦设置了style,就不可点击改变值示例示例的实现结果练习——进度组件需求说明:ProgressBarSeekBarRatingBar按照课件中示例图实施4.滚动视图当一个屏幕因为要显示的内容太多而显示不全时,我们可以使用滚动视图来解决这个问题垂直滚动视图ScrollViewScrollView可以用来实现垂直滚动的视图,当它内容组件的高度超过屏幕的高度时,就会在屏幕的右侧出现一个垂直方向的滚动条,通过单击手机上的上下按钮或者上下拂动屏幕可以查看未显示部分注意:在ScrollView标签中只能包含一个组件使用步骤在ScrollView标签中包含一个LinearLayout标签,并设置盖标签的android:orientation属性为vertical在LinearLayout中放置需要显示的组件示例ScrollView只能用来实现垂直滚动的视图,如果要实现水平滚动,需要水平滚动视图HorizontalScrollView示例5.选项卡组件当一个屏幕因为要显示的内容太多而显示不全时,除了使用滚动视图外,还可以使用选项卡组件,选项卡TabHost类似于android系统默认提供的电话薄界面选项卡可以方便的在窗口上放置多个标签页,每个标签页相当于获得了一个与外部容器相同大小的组件摆放区域选项卡是有多个Tab组成的,其中每个Tab都可以显示一个View或一个Activity使用步骤●在界面中定义TabHost组件,并为该组件定义该选项卡的内容组件,为内容组件定义id,这些内容组件将要作为某个Tab选项的视图●定义一个继承TabActivity的Activity●调用TabActivity的getHost方法获得TabHost对象●通过TabHost的相关方法来创建和添加选项卡newTabSpec(String tag)创建选项卡addTab(TabHost.TabSpec tabSpec)添加选项卡每个Tab在切换的时候会产生一个事件,通过OnTabChangedListener监听 示例---方式一示例示例的实现结果示例—方式二示例—方式三 Tab底部显示与上个案例的区别是android:id="@android:id/tabcontent的FrameLayout 与android:id="@android:id/tabs"TabWidget互换位置示例—方式四 设置关联Intent练习——创建选项卡需求说明:创建选项卡如图每个选项卡关联不同的Intent默认选择第二项练习——创建底部选项卡需求说明:创建选项卡如图每个选项卡关联不同的Intent默认选择第二项总结本章学习哪几种时间类组件?本章学习了哪几个进度条类组件?TabHost的使用方式?。

android常用控件大全

android常用控件大全

android常用控件大全在Android中使用各种控件(View)DatePicker-日期选择控件TimePicker-时间选择控件ToggleButton-双状态按钮控件EditText-可编辑文本控件ProgressBar-进度条控件SeekBar-可拖动的进度条控件AutoCompleteTextView-支持自动完成功能的可编辑文本控件MultiAutoCompleteTextView-支持自动完成功能的可编辑文本控件,允许输入多值(多值之间会自动地用指定的分隔符分开)ZoomControls-放大/缩小按钮控件Include-整合控件VideoView-视频播放控件WebView-浏览器控件RatingBar-评分控件Tab-选项卡控件Spinner-下拉框控件Chronometer-计时器控件ScrollView-滚动条控件在Android中使用的LayoutFrameLayout:里面只可以有一个控件,并且不能设计这个控件的位置,控件会放到左上角LinearLayout:里面可以放多个控件,但是一行只能放一个控件TableLayout:这个要和TableRow配合使用,很像html里面的tableAbsoluteLayout:里面可以放多个控件,并且可以自己定义控件的x,y的位置RelativeLayout:里面可以放多个控件,不过控件的位置都是相对位置(Android界面布局好像还可以直接引用一些view,如ScrollView等)常用控件:1,EditText主要函数:setText/getText设置/获取文本内容,setHint设置缺省显示内容;2,RadioGroup,RadioButtonRadioButton的isChecked()判断是否被选中获取选中RadioButon的ID:设置RadioGroup.setOnCheckedChangeListener方法publiconCheckedChanged(RadioGroupgroup,intcheckedId)//checkedId 是选中RadioButton的ID3,CheckBoxisChecked()判断是否被选中setOnCheckedChangeListener方法监视选中状态改变情况4,Spinnera,显示数据1),硬编码加载通过setAdapter方法设置类型为ArrayAdapter(Contextcontext,inttextViewResId,String[]objects)textViewResourceId:显示内容的ViewID默认设置为yout.simple_spinner_itemobjects:显示的内容2),从资源文件中加载ArrayAdapter.createFromResource(Contextcontext,inttextArrayResId,in ttextViewResId)//textArrayResId是资源ID返回ArrayAdapter<CharSequence>b,设置下拉列表的风格(可选)adapter.setDropDownViewResource(yout.simple_spinner_d ropdown_item);c,监听选项选择变更事件setOnItemSelectedListener设置监听去Spinner.OnItemSelectedListener类须实现以下两个方法publicvoidonItemSelected(AdapterView<?>parent,Viewview,intposition ,longid)//view选中项实例,position选择项在adapter中的位置publicvoidonNothingSelected(AdapterView<?>arg0)d,设置选中项Spinner.setSelection(position)//索引从0开始d,获取选中项getSelectedItemPosition()getSelectedItem()//该值toString()则为选中内容的字符串getSelectedItemId()getSelectedView()5,AutoCompleteTextView1,setAdapter设置数据adapter2,设置输入多少个字符显示提示AutoCompleteTextView.setThreshold(intthreshold)6,MultiAutoCompleteTextView(允许输入多值,多值之间会自动地用指定的分隔符分开)1,setAdapter设置数据adapter2,setTokenizer设置提示Tokenizer缺省的为maTokenizer()以逗号分隔7,DatePicker,TimePickera,DatePicker1),设置初始显示日期init(intYear,intmonth,intday,newDatePicker.OnDateChangedListener(){ publicvoidonDateChanged(DatePickerview,intyear,intmonthOfYear,intd ayOfMonth){}})2),获取设置值getYeah()/getMonth()/getDayOfMonth()b,TimePicker1),设置setCurrentHour(IntegercurrentHour)/setCurrentMinuter(Integercurrent Hour)2,setIs24HourView(Boolean)设置是否为24小时制显示3,监听设置改变setOnTimeChangedListenerc,获取系统当期时间和日期Calendar.getInstance()返回CalendarCalendar.get(intfield)---field可以为Calendar.YEAR/Calendar.MONTH/Calendar.DAY_OF_MONTH/Calendar. HOUR_OF_DAY/Calendar.MINUTE8,ImageView/ImageButton主要方法setImageResource设置显示图片setAlpha设置Alphainvalidate强制更新setScaleType(ScaleTypest)设置图片显示方式,st是一枚举setAdjustViewBounds设置是否调整控件适应图片大小setBackgroundResource设置背景9,ImageSwitcher(显示一系列的图片,但当前只显示一张图片)显示数据setFactory(ViewSwitcher.ViewFactoryfactory)设置要显示的数据,ViewFactory接口须实现方法publicViewmakeView(){}负责提供当前显示的视图(ImageView),且View必须为新实例方法setImageResource设置当前显示的图片getCurrentView()返回当前显示的视图setInAnimation(Animationani)设置视图装载入时的动画效果,AnimationUtils.loadAnimation(Contextcontext,intid)获取动画效果android.R.anim.XXsetOutAnimation(Animationani)设置视图装载入时的动画效果10,Gallery(显示一系列的图片,提供拖动等特效)显示数据setAdapter(SpinnerAdapteradapter)设置数据适配器.数据适配器可以继承自BaseAdapter,该类publicViewgetView(intposition,ViewconvertView,ViewGroupparent)返回当前选择的视图(ImageView)选项选中监听setOnItemSelectedListener11,GridView(表格显示一系列图片)显示数据setAdapter(ListAdapteradapter)设置数据适配器.数据适配器可以继承自BaseAdapter,该类publicViewgetView(intposition,ViewconvertView,ViewGroupparent)返回当前选择的视图(ImageView)选项选中监听setOnItemSelectedListenergetSelectedView()返回当前选中的视图12,ScrollView13,ProgressBarsetIndeterminate设置进度条是否自动运转setProgressStyle设置显示风格.ProgressDialog.STYLE_HORIZONTAL/ProgressDialog.STYLE_SPINNE RsetProgress设置进度setMax设置最大值getProgress()获取当前进度14,SeekBar方法setMax设置最大值getProgress()获取当前值setProgress设置值setIndeterminate监听器setOnSeekBarChangeListener其下有三个方法publicvoidonProgressChanged(SeekBararg0,intarg1,booleanarg2)//数值变更,arg1新值,是否TouchpublicvoidonStartTrackingTouch(SeekBarseekBar)//开始拖动publicvoidonStopTrackingTouch(SeekBarseekBar)//结束拖动15,ListViewa,显示数据setAdapter(ListAdapteradapter)adapter可为newSimpleCursorAdapter/SimpleAdapter(Contextcontext,intlayout,Curs orc,String[]from,int[]to)layout用来显示数据的模板.显示一列可用yout.simple_list_item_1两列可用yout.simple_list_item_2多列则需要自己实现xml视图布局文件c数据(可用ArrayList构造数据)from':to用来显示对应列的空件idb,动态增删数据adapter.notifyDataSetChanged()d,设置背景色setBackGroudRource。

android的常用控件讲解

android的常用控件讲解

Android学习笔记Android的控件在学习过程中十分重要哦今天将介绍android系统为我们提供的常用控件中的TextView,Button,EditText,RadioButton,CheckBox,ToggleButton,RatingButton七个控件的声明和事件响应。

1、 TextView类似中的Label控件,只读显示控件,可通过getText()获取其android:text 属性、setText()设置其android:text属性。

在res/layout/main.xml的LinearLayout节中添加如下代码来声明TextView。

1 TextView android:layout_ width="fill_parent" android:layout_border="1"height="wrap_content" android:text="@string/hello" android:id="@+id/myTextView" /> 在java代码中可以通过下列代码取得该控件。

1 //取得该控件2 TextView myTextView =(TextView)findViewById(R.id.myTextView);2、 Button按钮控件,用户通过该控件来提交自己的请求,是用户与应用程序交互的最常用控件之一。

1)普通按钮在res/layout/main.xml中声明控件1 Button android:layout_ width="wrap_content" android:layout_border="1"height="wrap_content" android:id="@+id/myButton" />2)用户自定义按钮用户自定义按钮在很大程度上满足了用户个性化的要求。

Android基础之常用控件属性介绍

Android基础之常用控件属性介绍

Android基础之常⽤控件属性介绍⽬录常⽤控件之常⽤属性控件可见性TextViewButtonEditTextImageViewProgressBarAlertDialogProgressDialogToastMenu常⽤控件之常⽤属性控件可见性android:visibility="visible/invisible/gone"visible表⽰控件可见(默认)/invisible表⽰控件不可见/gone表⽰控件不可见且不再占⽤任何屏幕空间TextViewandroid:layout_height/width(match_parent/wrap_content)前者由⽗布局决定,后者由控件内容决定android:gravity指定⽂字的对齐⽅式android:textSize 指定⽂字的⼤⼩(sp单位)android:textColor 指定⽂字颜⾊Buttonandroid:textAllCaps 是否将字母⾃动进⾏⼤写转换默认trueEditTextandroid:hint="提⽰⽂字" 指定⼀段提⽰性⽂本android:maxLines="2" 指定最⼤⾏数为2ImageViewandroid:src="drawable/img_1" 指定⼀张图⽚ProgressBar⽤于在屏幕上显⽰进度条style="?android:attr/progressBarStyleHorizontal" 通过style属性设置成⽔平进度条android:max="100" 通过max设定进度条最⼤值AlertDialog弹出对话框,置顶于所有界⾯元素之上,能够屏蔽掉其他控件的交互能⼒public class MainActivity extends AppCompatActivity implements View.OnClickListener{@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(yout.activity_main);Button button = findViewById(R.id.button_useful);button.setOnClickListener(this);}@Overridepublic void onClick(View view) {switch (view.getId()){case R.id.button_useful:AlertDialog.Builder dialog = new AlertDialog.Builder(this);dialog.setTitle("This is dialog");dialog.setMessage("Something important.");dialog.setCancelable(false);dialog.setPositiveButton("OK", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialogInterface, int i) {}});dialog.setNegativeButton("cancel", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialogInterface, int i) {}});dialog.show();break;default:break;}}}ProgressDialog和AlertDialog相类似,区别是,此控件会在对话框中显⽰⼀个进度条注意,如果progressDialog.setCancelable()填写的是false,则你点击back键⽆法取消掉,需要⾃⾏使⽤dismiss()来关闭对话框,否则该控件将会⼀直存在case R.id.button_progress_dialog:ProgressDialog progressDialog = new ProgressDialog(this);progressDialog.setTitle("This is ProgressDialog");progressDialog.setMessage("Loading...");progressDialog.setCancelable(true);progressDialog.show();break;Toast显⽰⽂本Toast.makeText(context,显⽰的内容,显⽰的时间长短);context--Activity实例或getApplicationContext()得到时间长短有两种:Toast.LENGTH_LONG/Toast.LENGHT-SHORT最后.show()⽤来显⽰⽂本显⽰图⽚在写Android的XML布局⽂件时,在ImageView或ImageButton中经常会碰到⼀个提⽰:Missing contentDescription attribute on image.这个属性是做什么的呢?这个属性是⽅便⼀些⽣理功能有缺陷的⼈使⽤应⽤程序的。

Android常用控件的介绍

Android常用控件的介绍
// 图片源 // Bitmap bm = BitmapFactory.decodeStream(getResources() // .openRawResource(id)); // 获得图片的宽高 int width = bm.getWidth(); int height = bm.getHeight();
android:layout_width="100dp“ – android:layout_height="wrap_content"> – </EditText>
EditText
EditText继承自TextView,所以拥有TextView的所有属性。另外,EditText还有属于自 己的属性。android:hint是EditText的默认提示文字,一般用于提示用户输入。 android:textColorHint是提示文字的颜色,如果不设置,就为默认提示颜色。 android:maxLength表示最大输入长度。android:password=“true”就可以实现这一密码输 入功能。
Widget简介
二、AppWidget 框架的主要类介绍 1. AppWidgetManger 类 bindAppWidgetId(int appWidgetId, ComponentName provider) 通过给定的ComponentName 绑定appWidgetId getAppWidgetIds(ComponentName provider) 通过给定的ComponentName 获取AppWidgetId getAppWidgetInfo(int appWidgetId) 通过AppWidgetId 获取 AppWidget 信息 getInstalledProviders() 返回一个List<AppWidgetProviderInfo>的信息 getInstance(Context context) 获取 AppWidgetManger 实例使用的上下文对象 updateAppWidget(int[] appWidgetIds, RemoteViews views) 通过appWidgetId 对传进来的 RemoteView 进行修改,并重新刷新AppWidget 组件

安卓UI控件详细笔记

安卓UI控件详细笔记
在ellipsize指定marquee的情况下,设置重复滚动的次数,当设置为 marquee_forever时表示无限次。
android:focusable="true" android:focusableInTouchMode="true"
android:singleLine="true"
16、android:maxLength:限制显示的文本长度,超出部分不显示。 17、android:lines:设置文本的行数,设置两行就显示两行,即使第二行没有数据也显示。 18、android:singleLine 设置文本是否是单行显示(默认false, 超出部分会换行)。如果设置为true,则超出部 分不显示, 只显示省略号...
2. android:inputType="textPersonName"
3. android:inputType="textPassword"
文本密码
4. android:inputType="numberPassword" 只能输入数字的密码
5. android:inputType="textEmailAddress" 电邮地址
Android提供了非常良好的UI事件处理机制。View是绘制UI的类,每个View对象都可以向Android注册事件监听器。每个事件监听器都包含一个回调 方法(callback method),这个回调方法主要的工作就是回应或处理用户的操作。
(二)、Android UI事件处理中基于监听和回调的事件处理机制(event listener):
7、 android:ems
设置TextView的宽度为N个字符的宽度

Android-UI

Android-UI
android.widget.CheckBox复选按钮,继承自 poundButton,在android.widget包中。 常用方法: isChecked()检查是否被选中。 监听按钮状态更改,需要添加 setOnCheckedChangeListener(CompoundButton.OnCheckedChangeListen er); android.widget. RadioButton单选按钮,继承自 poundButton,在android.widget包中。 通常用法: 单选按钮要声明在RadioGroup,RadioGroup是流式布局 android.widget.LinearLayout的子类。 单选按钮状态更改的监听,是要给他的RadioGroup添加 setOnCheckedChangeListener(RadioGroup.OnCheckedChangeListener)监 听器。注意监听器类型和CheckBox是不一样的。
注册实例练习
图片控件
ImageView控件负责显示图片,其图片的来源可 以是在资源文件中的id,也可以是Drawable对象 或者位图对象。还可以是Content Provider的URI。 常用属性:
Android:adjustViewBounds Android:maxHeight Android:maxWidth Android:src Android:scaleType 设置是否需要ImageView调整自己的边 界,保证图片的显示比例 最大高度 最大宽度 图片路径 调整或移动图片
android.widget. ToggleButton开关形式的按钮, 继承自poundButton,在 android.widget包中。 常用属性设置: 选择状态文字 未选状态文字

Android平台应用软件开发课件:Android中的UI控件

Android平台应用软件开发课件:Android中的UI控件
3.按钮控件Button Button控件是Android开发中最常用的按钮控件,继承 自android.widget.TextView类,位于android.widget包中。它 的常用子类有CheckBox、RadioButton、ToggleButton。其常 用属性如表4-3所示。
Android中的UI控件
4.图片控件ImageView ImageView控件常用于显示图片,其图片的来源可以是 资源文件中图片的id号,也可以是Drawable对象或者位图对 象。其常用属性如表4-4所示。
Android中的UI控件
5.单选按钮控件RadioButton RadioButton控件,继承自 poundButton类,位于android.widget包中。 单选按钮通常不单独使用,一般在RadioGroup中声明,用于 提供两个或多个互斥选项,即在一组单选按钮中只能选择一 个。要监听单选按钮状态的更改,需给它所在的RadioGroup 添加setOnCheckedChangeListener()监听器。其常用属性如表 4-5所示。
Android中的UI控件
Android中的UI控件
1.ListView使用ArrayAdapter适配器 分析一下使用的步骤。 (1) 定义一个数组来存放ListView中item的内容。 (2) 通过实现ArrayAdapter的构造函数来创建一个 ArrayAdapter的对象。 (3) 通过ListView的setAdapter()方法绑定ArrayAdapter。
Android中的UI控件
图4-4 模拟下载进度界面
Android中的UI控件
我们做Android开发时要尽量避免让主线程执行耗时的 操作,例如网络请求、数据库查询等操作,因为在主线程中 执行这些长时间的操作会阻塞主线程,从用户的角度来看, 好像该应用程序出现了死机状态。甚至更糟糕的是,如果 UI程序被阻塞几秒后,就会弹出程序无响应(ANR: Application Not Responding)对话框,如图4-5所示。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基础篇 Android常用控件
回顾与作业点评
简述Acvity的生命周期 Acvity的启动方式 如何在Activity间进行数据的传递
本章任务
使用Android开发使用时间组件 使用Android开发使用进度条组件 使用Android开发创建底部选项卡
了解Android的组件层次结构 掌握常用的日期时间类控件 掌握常用的几个容器组件
计时器组件
Chronometer
和 DigitalClock 都 继 承 TextView , 但 它 不 显 示 时 间 , 它 显示的是从某个起始时间开始,一共过去了多少时间 默认情况下只能输出MM:SS或H:MM:SS的时间格式 重要属性
android:format:定义时间的格式如:hh:mm:ss
…… } }); timePicker1.setOnTimeChangedListener(new OnTimeChangedListener() { public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
…… } });
textView = (TextView)findViewById(R.id.edit); int i= seekBar.getProgress(); textView.setText"当前进度:"+i+"%");
} });
评分组件
RatingBar
RatingBar是SeekBar和ProgressBar的扩展,用星星 来评级
本章目标
Android组件的层次结构
UI组件都是View的子类,View有很多子类,它们 之间存在树状的继承关系
View及其子类结构图
Android组件的层次结构
继承关系
TextView及其子类结构图
Android组件的层次结构
继承关系
ViewGroup及其子类结构图
其下的子类一般作为容器或布局来使用
示例
datePicker1.init(c.get(Calendar.YEAR), c.get(Calendar.MONTH), c.get(Calendar.DAY_OF_MONTH), new OnDateChangedListener() {
public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
计时器组件
Chronometer
示例
public void onStart(View view) { chronometer.start();
} public void onStop(View view) {
chronometer.stop(); } public void onReset(View view) {
Android组件的层次结构
继承关系
FrameLayout及其子类结构图
其下的子类通常作为容器或布局来使用
日期时间选择器
DatePicker/TimePicker
DatePicker组件可用于输入日期,TimePicker组件可用 来选择时间,只能输入小时和分,默认12小时制
DatePicker
SeekBar是ProgressBar的子类,这个组件不需要设 置sencondaryProgress属性
事 件 接 口 OnSeekBarChangeListener 处 理 组 件 事 件 由以下三个方法
public void onStartTrackingTouch(SeekBar seekBar) 按下 滑杆后触发
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) 动滑杆开始滑动时触发 public void onStopTrackingTouch(SeekBar seekBar) 松开 滑杆时触发
可拖动的进度条组件
TimePicker
使用onTimeChangedListener监听器获取用户的时间选择 使用setIs24HourView设置是否以24小时制显示 使用getCurrentHour获得当前的小时数 使用getCurrentMinute获得当前的分钟数
日期时间选择器
DatePicker/TimePicker
重要方法
setBase(long base):设置倒计时起始时间
➢ 参数为SystemClock.elapsedRealtime()方法返回的值为当 前时刻
setFormat(String format):设置显示时间的格式 start():开始计时 stop():停止计时 setOnChronometerTickListener(Chronometer.OnChronom eterTickListener listener):当计时器改变时调用
SeekBar
示例
<SeekBar android:id="@+id/seekbar" android:layout_width="fill_parent" android:layout_height="wrap_content" android:max=“100" android:progress=“60"> </SeekBar>
如网上购物,对商家的产品和服务进行打分等
常用属性
android:numStarts用于评分的五角星数量 android:rating当前的分数 android:stepSize分数的增长单位,默认是0.5
事件接口OnRatingBarChangeListener处理组件事件
public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser)
小号圆形ProgressBar
<ProgressBar android:id="@+id/pbar2" android:layout_width="wrap_content" android:layout_height="wrap_content" style="?android:attr/progressBarStyleSmall" />
//显示标题不确定性进度条

setProgressBarIndeterminateVisibility(true);



//设置标题进度条风格

requestWindowFeature(Window.FEATURE_PROGRESS);

setContentView(yout.main);
chronometer.setBase(SystemClock.elapsedRealtime()); } chronometer.setOnChronometerTickListener(new OnChronometerTickListener() {
public void onChronometerTick(Chronometer chronometer) { String time = chronometer.getText().toString(); Log.v("ChronometerDemo1", time);
Android系统提供了两大类进度条样式
长形进度条 圆形进度条(大中小三种)
默认是普通圆形进度条,是不确定Android进度条
进度条组件
多样式ProgressBar
默认普通圆形ProgressBar
<ProgressBar android:id="@+id/pbar1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" />
大号圆形ProgressBar
<ProgressBar android:id="@+id/pbar2" android:layout_width="wrap_content" android:layout_height="wrap_content" style="?android:attr/progressBarStyleLarge" />
日期时间选择器
DatePicker/TimePicker
DatePicker组件可用于输入日期,TimePicker组件可用 来选择时间,只能输入小时和分,默认12小时制
DatePicker
使用onDateChangedListener监听器来获取用户的日期选择 使用init对组件进行初始化 使 用 getYear,getMonth,getDayOfMonth 方 法 获 得 用 户 选 择 的年,月,日
} });
练习——时间组件
需求说明: 日期时间选择器 时钟组件 计时器组件
完成时间:25分钟
共性问题集中讲解
共性问题集中讲解
常见调试问题及解决办法 代码规范问题
进度条组件
ProgressBar
当一个应用在后台执行时,前台界面就不会有什么 信息,这时用户根本不知道程序是否在执行、执行 进度如何、应用程序是否遇到错误终止等,这时需 要使用进度条来提示用户后台程序执行的进度
相关文档
最新文档