Android讲义3---第二章其他基础组件
来源:互联网 发布:剑三唐门捏脸数据 编辑:程序博客网 时间:2024/06/05 06:25
TabHost可以方便的放置多个标签页,每个标签页相当于获得一个与外部容器相同大小的组件摆放区。
NumberPicker通常使用以下三个方法:
1:setMinValue 设置组件最小值
Toast不会获得焦点。
ProgressBar是进度条控件,它还派生了2个常用组件:SeekBar和RatingBar。
与TabHost结合的还有如下组件:
TabWidget:代表选项卡的标题条
TabSpec:代表选项卡的一个TAB页面
TabHost提供两个方法创建,添加标签页。
newTabSpec:创建选项卡
addTab:添加选项卡
如果直接使用TabHost做界面,则:
TabHost的ID必须是:@android:id/tabhost
TabWidget的ID必须是:@android:id/tabs
FrameLayout的ID必须是:@android:id/tabcontent
SearchView是搜索组件,它可以让用户在文本框内输入文字,实现搜索。
常用方法:
setIconifiedByDefault:设置搜索框是否自动缩小为图标
setSubmitButtonEnabled:设置是否显示搜索按钮
setQueryHint:设置搜索框内默认的提示文本
setOnQueryTextListener:设置监听事件
1:setMinValue 设置组件最小值
2:setMaxValue 设置组件最大值
3:setValue 设置组件当前值
Toast过一段时间自动消失。
调用方法:
1:调用Toast的构造器或者makeText静态方法创建一个Toast对象。
2:调用Toast的方法设置提示的对齐方式,页边距等。
3:调用Toast的show方法显示它出来。
ViewFlipper继承了ViewAnimator,它可以调用addView添加多个组件,可以使用动画在多个组件间切换。
ViewFlipper与AdapterViewFlipper的区别是,ViewFlipper需要addView添加多个View,而AdapterViewFlipper只要传入一个Adapter。
ImageSwitcher继承了ViewSwitcher,因此具有和ViewSwitcher相同的特征,可以在切换View的时候使用动画效果。
使用ImageSwitcher只要以下两步:
1:为ImageSwitcher提供一个ViewFactory,该ViewFactory生成的View组件必须是ImageView。
2:需要切换图片时,只要调用ImageSwitcher的setImageDrawable,setImageResource和setImageURI即可。
通过style可以指定进度条的风格
@android:style/Widget.ProgressBar.Horizontal:水平进度条
@android:style/Widget.ProgressBar.Inverse:普通大小的环形进度条
@android:style/Widget.ProgressBar.Large:大环形进度条
@android:style/Widget.ProgressBar.Large.Inverse:大环形进度条
@android:style/Widget.ProgressBar.Small:小环形进度条
@android:style/Widget.ProgressBar.Small.Inverse:小环形进度条
ProgressBar提供了如下方法操作进度:
setProgress(int)---设置进度的百分比
incrementProgressBy(int)---设置进度条的增加或者减少 正数了加,负数为减。
SeekBar与ProgressBar非常相似,进度条用颜色填充进度,而拖动条用滑块的位置标识数值。
RatingBar与SeekBar的最大区别是:RatingBar是通过星星表示进度。
StackView也是AdapterViewAnimator的子类,以堆叠的方式显示列表项。
StackView提供两种控制方式:
1:拖走StackView中处于顶端的View,下一个View将会显示出来,将上一个View拖进StackView,将会显示拖进来的View。
2:通过调用showNext或者ShowPrevious控制下一个和上一个。
StackView属性:
loopView:true/false 是否允许循环
函数
startFlipping:开始播放
stopFlipping:停止播放
showPrevious:上一张
showNext:下一张
ExpandableListView是ListView的子类。
它所显示的列表项由ExpandableListAdapter提供。
实现ExpandableListAdapter有三种方式:
1:扩展BaseExpandableListAdapter。
2:使用SimpleExpandableListAdapter将两个List集合包装成ExpandableListAdapter。
3:使用SimpleCursorTreeAdapter将Cursor中的数据包装成SimpleCursorTreeAdapter。
AdapterView继承了ViewGroup,它本质是容器。
AdapterView可以包括多个列表项。
AdapterView显示的多个列表项由Adapter提供,调用AdapterView的setAdapter设置即可。
ListView与ListActivity
ListView有如下两种方式:
1:直接使用ListView进行创建
2:让Activity继承ListActivity
Adapter本身是一个接口,它派生了ListAdapter和SpinnerAdapter两个子接口。
其中ListAdapter为AbsListView提供列表项。
SpinnerAdapter为AbsSpinner提供列表项。
Adapter常用的实现类如下
ArrayAdapter:简单易用,通常是将数组或者List集合的多个值包装程多个列表项。
SimpleAdapter:功能强大的Adapter。
SimpleCursorAdapter:游标型的Adapter。
BaseAdapter:通常用于扩展自定义Adapter。
ArrayAdapter功能有限,它的每个列表项只能是TextView,如果需要复杂的列表项,需要使用SimpleAdapter。
ImageView
scaleType可以指定一下属性
matrix---ImageView.ScaleType.MARTIX:使用matrix方式
fixXY---ImageView.ScaleType.FIT_XY:对图片的横向,纵向独立缩放,使得该图片完全适应于该ImageView。
fitStart---ImageView.ScaleType.FIT_START:保持纵横比缩放图片,直到该图片完全显示在ImageView中。图片边长与ImageView边长相等,图片在ImageView左上角。
fitCenter---ImageView.ScaleType.FIT_CENTER:与Start相同,但是图片在中央。
fitEnd---ImageView.ScaleType.FIT_END:与Start相同,但是图片在右下角。
center---ImageView.ScaleType.CENTER:图片放中间,不进行任何处理
centerCrop---ImageView.ScaleType.CENTER_CROP:保持纵横比缩放图片,使得图片完全覆盖ImageView,只要图片最短的边能显示出来即可。
centerInside---ImageView.ScaleType.CENTER_INSIDE:保持纵横比缩放图片,使得ImageView完全显示图片。
ImageView还提供其他方法
setImageBitmap(Bitmap bm):使用Bitmap位图设置该ImageView显示的图片。
setImageDrawable(Drawable drawable):使用Drawable对象设置ImageView显示的图片。
setImageResource(int resid):使用图片资源ID设置要显示的图片。
setImageURI(Uri uri):使用图片的URI设置要显示的图片。
开发自定义View可以重载以下方法
onFinishInflate();当应用从XML布局文件加载该组件并利用它来构建界面后,此方法被回调
onMeasure(int,int);系统调用该方法来检测View组件及它包含的子组件的大小
onLayout(boolean,int,int,int,int);当该组件需要分配其子组件的位置,大小时候,该方法被回调
onSizeChanged(int,int,int,int);当该组件的大小被改变时候被回调
onDraw(Canvas);当该组件将要绘制它的内容时候回调该方法进行绘制
onKeyDown(int,KeyEvent);当某个键按下时候触发
onKeyUp(int,KeyEvent);当松开某个按键时候触发
onTrackballEvent(MotionEvent);当发生轨迹球事件时候触发
onTouchEvent(MotionEvent);当发生触摸屏事件时候触发
onWindowFocusChanged(boolean);当组件得到,失去焦点时候触发
onAttachedToWindow();当把该组件放入某个窗口时候触发
onDetachedFromWindow();当把该组件从某个窗口分离时候触发
onWindowVisibilityChanged(int);当包含该组件的窗口可见性发生改变时候触发
阅读全文
0 0
- Android讲义3---第二章其他基础组件
- Android 四大组件基础讲义
- <疯狂 android讲义>第二章 笔记
- 疯狂Android讲义第二讲
- 疯狂Android讲义(第3版)学习笔记(第二章---界面编程)
- [android基础]《疯狂android讲义》重点整理(3)
- Android讲义3---第三章---异步任务
- Android讲义3---第四章---Fragment详解
- Android学习笔记---第二天---基础UI组件---Toast
- Android学习笔记---第二天---基础UI组件---TextView
- Android学习笔记---第二天---基础UI组件---EditText
- Android讲义3---Android常用工具
- 第二章:Android开发基础
- 疯狂Android讲义-----第一章 Android应用的基本组件介绍
- Android讲义3---第三章---Android事件概述
- 疯狂Android讲义2.1.3
- Android讲义3---2.11---ActionBar
- Android讲义3---2.10---菜单
- Android讲义3---2.8.8---通知状态栏
- 比原链联合创始人段新星:希望建立起连接比特世界和原子世界资产交互的桥梁
- C语言 逆序输出单链表(递归)
- 课本第二章java编程题
- LeetCode 645. Set Mismatch
- Android讲义3---第二章其他基础组件
- 微信jssdk常见错误及解决方法
- CRC16 自定义查询程序
- 计算机发展历史(详细)
- javascript变量值的类型和传递值的类型
- CodeForces
- 利用阿里大于实现java短信验证功能
- 2222
- IE浏览器控件页面如何在选中的文本框输入焦点输入文字