Android重要控件概览(下)

来源:互联网 发布:exo light软件 编辑:程序博客网 时间:2024/06/14 12:57

1、ViewFlipper——多页面管理控件,实现子界面的自动切换

(1)为ViewFlipper加入View:A.静态导入(在Layout布局文件中直接添加View控件); B.动态导入(addView())
(2)设置进入动画:setInAnimation();
         设置退出动画:setOutAnimation();
         设置视图切换自动播放时间间隔:setFlipInterval();
         开始播放:startFlipping();
(3)设置支持手势活动:
@Overridepublic boolean onTouchEvent(MotionEvent event) {// TODO Auto-generated method stubswitch (event.getAction()) {                //手指落下case MotionEvent.ACTION_DOWN: {startX=event.getX();break;}                //手指滑动case MotionEvent.ACTION_UP:{//向右滑动if(event.getX()-startX>50){ flipper.setInAnimation(this, R.anim.left_in); flipper.setOutAnimation(this, R.anim.left_out); flipper.showNext();}//向左滑动if(startX-event.getX()>50){ flipper.setInAnimation(this, R.anim.right_in); flipper.setOutAnimation(this, R.anim.right_out); flipper.showPrevious();}break;}}                //手指离开                case MotionEvent.ACTION_UP:                {                    break;                }return super.onTouchEvent(event);}

2、ScrollView——内容很多,屏幕显示不完,通过滚动来显示完整的视图

(1)ScrollView种类:A. HorizontalScrollView:水平滚动视图;B.ScrollView:垂直滚动视图;
(2)属性:设置不显示滚动条:Android:scrollbars="none";
(3)代码设置隐藏滚动条:setHorizontalScrollBarEnabled(false);setVerticalScrollBarEnabled(false);
(4)监听器:setOnTouchListenter()
scroll.setOnTouchListener(new OnTouchListener() {@Overridepublic boolean onTouch(View v, MotionEvent event) {// TODO Auto-generated method stubswitch (event.getAction()) {case MotionEvent.ACTION_MOVE: {/** * (1)getScrollY()————滚动条滑动的距离  * (2)getMeasuredHeight() * (3)getHeight() */// 顶部状态if (scroll.getScrollY() <= 0) {Log.i("Main", "滑动到顶部");}// 底部状态// TextView的总高度<=一屏幕的高度+滚动条的滚动距离if (scroll.getChildAt(0).getMeasuredHeight() <= scroll.getHeight() + scroll.getScrollY()) {Log.i("Main", "滑动到底部");Log.i("Main","scroll.getChildAt(0).getMeasuredHeight()="+ scroll.getChildAt(0).getMeasuredHeight()+ "scroll,getHeight()="+ scroll.getHeight()+ "scroll.getScrollY()="+ scroll.getScrollY());tv.append(getResources().getString(R.string.content));  // 刷新、追加}break;}}return false;}});}
(5)scrollTo和scrollBy
         scrollTo:以滚动视图起始位置开始计算;
         scrollBy:相对前一次的位置,去滚动相应距离

3、Gallery——缩略图浏览器

      http://blog.csdn.net/songshimvp1/article/details/50233727——实际案例

4、SeekBar——拖动条

(1)方法:setMax:设置最大数值;
(2)事件监听:OnSeekBarChangeListenter监听三个事件:
                      A. onProgressChanged();      //数值改变
                      B. onStartTrackingTouch();    //开始拖动
                      C. onStopTrackingTouch();    //停止拖动
(3)自定义SeekBar
         看不到源码时,可以在G:\AndroidWork\adt-bundle-windows-x86-20130917\sdk\platforms\android-18\data\res\drawable中查找!     

0 0
原创粉丝点击