zoukankan      html  css  js  c++  java
  • Android学习笔记之 ViewFlipper UI的简单用法

    这是一个左右滑动的效果,这里以切换图片为例。

      1 public class ViewFlipper_Main extends Activity implements OnGestureListener {
      2 
      3     private ViewFlipper vFlipper;
      4     private GestureDetector gDetector;
      5 
      6     @Override
      7     protected void onCreate(Bundle savedInstanceState) {
      8         super.onCreate(savedInstanceState);
      9         setContentView(R.layout.viewflipper_activity);
     10 
     11         vFlipper = (ViewFlipper) this.findViewById(R.id.vFlipper);
     12         gDetector = new GestureDetector(this);
     13 
     14         Bitmap bitmap = BitmapFactory.decodeResource(getResources(),
     15                 R.drawable.test1);
     16         Bitmap bitmap1 = BitmapFactory.decodeResource(getResources(),
     17                 R.drawable.test2);
     18         Bitmap bitmap2 = BitmapFactory.decodeResource(getResources(),
     19                 R.drawable.test3);
     20 
     21         vFlipper.addView(addImgView(bitmap));
     22         vFlipper.addView(addImgView(bitmap1));
     23         vFlipper.addView(addImgView(bitmap2));
     24 
     25     }
     26 
     27     public View addImgView(Bitmap bm) {
     28         ImageView imageView = new ImageView(this);
     29         imageView.setImageBitmap(bm);
     30         return imageView;
     31     }
     32 
     33 
     34     @Override
     35     public boolean onCreateOptionsMenu(Menu menu) {
     36         // Inflate the menu; this adds items to the action bar if it is present.
     37         getMenuInflater().inflate(R.menu.view_flipper__main, menu);
     38         return true;
     39     }
     40 
     41     @Override
     42     public boolean onTouchEvent(MotionEvent event) {
     43         // TODO Auto-generated method stub
     44         // return super.onTouchEvent(event);
     45         return this.gDetector.onTouchEvent(event);
     46     }
     47 
     48     @Override
     49     public boolean onDown(MotionEvent e) {
     50         // TODO Auto-generated method stub
     51         return false;
     52     }
     53 
     54     @Override
     55     public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
     56             float velocityY) {
     57         // TODO Auto-generated method stub
     58         if (e1.getX() - e2.getX() > 120) {
     59             this.vFlipper.setInAnimation(AnimationUtils.loadAnimation(this,
     60                     R.anim.push_left_in));
     61             this.vFlipper.setOutAnimation(AnimationUtils.loadAnimation(this,
     62                     R.anim.push_left_out));
     63             this.vFlipper.showNext();
     64             return true;
     65         } else if (e1.getX() - e2.getX() < -120) {
     66             this.vFlipper.setInAnimation(AnimationUtils.loadAnimation(this,
     67                     R.anim.push_right_in));
     68             this.vFlipper.setOutAnimation(AnimationUtils.loadAnimation(this,
     69                     R.anim.push_right_out));
     70             this.vFlipper.showPrevious();
     71             return true;
     72         }
     73         return true;
     74 
     75     }
     76 
     77     @Override
     78     public void onLongPress(MotionEvent e) {
     79         // TODO Auto-generated method stub
     80 
     81     }
     82 
     83     @Override
     84     public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
     85             float distanceY) {
     86         // TODO Auto-generated method stub
     87         return false;
     88     }
     89 
     90     @Override
     91     public void onShowPress(MotionEvent e) {
     92         // TODO Auto-generated method stub
     93 
     94     }
     95 
     96     @Override
     97     public boolean onSingleTapUp(MotionEvent e) {
     98         // TODO Auto-generated method stub
     99         return false;
    100     }
    101 
    102 }
    View Code
  • 相关阅读:
    计算机基础数据结构讲解第九篇-顺序队列
    计算机基础数据结构讲解第八篇-栈
    计算机基础数据结构讲解第七篇-链表操作
    计算机基础数据结构讲解第六篇-顺序表操作
    计算机基础数据结构讲解第五篇-顺序表
    计算机基础数据结构讲解第三篇-B树和B+树
    计算机基础数据结构讲解第二篇-散列查找
    MLHPC 2018 | Aluminum: An Asynchronous, GPU-Aware Communication Library Optimized for Large-Scale Training of Deep Neural Networks on HPC Systems
    MXNet源码分析 | KVStore进程间通信
    链表类问题
  • 原文地址:https://www.cnblogs.com/wjdawx/p/3229941.html
Copyright © 2011-2022 走看看