ViewFlipper 视图容器
来源:互联网 发布:电视剧硅谷中的算法 编辑:程序博客网 时间:2024/06/08 18:16
大家好,好久不见,这段时间一直忙来着,也没上来进行更新,但是我还在想,我应该给大家更新点什么呢?东西太多了,想更新的东西,我怕有些东西我描述的不清楚,给大家造成干扰,纠结了一段时间后,但是我还是坚定了自己的信念,接着写,欢迎大家指正里面的错误!
今天讲的呢是ViewFlipper 这个容器
想必大家都用过PPT里面的幻灯片切换,每个图片的在规定时间内定的切换动作,今天实现的这个就类似幻灯片的切换吧;
这个控件的简单介绍,大家百度下就知道了,老规矩,干货上来,一眼就知道:
首先是布局文件:activity_flipper.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <ViewFlipper android:id="@+id/vf" android:layout_width="match_parent" android:layout_height="match_parent" /></LinearLayout>
是不是看布局就感觉到很简单呢,在来看看具体的实现部分吧
FlipperActivity.java
public class FlipperActivity extends Activity implements GestureDetector.OnGestureListener { //声明ViewFlipper private ViewFlipper mViewFlipper; //声明GestureDetector 手势 private GestureDetector mGestureDetector; //声明所需的图片 private ImageView mimageView1; private ImageView mimageView2; private ImageView mimageView3; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_flipper); //创建ViewFlipper 的子视图 mimageView1 = new ImageView(this); mimageView2 = new ImageView(this); mimageView3 = new ImageView(this); //为ImageView 添加资源图片 mimageView1.setImageResource(R.drawable.image1); mimageView2.setImageResource(R.drawable.image2); mimageView3.setImageResource(R.drawable.image3); //创件手势实例对象 mGestureDetector = new GestureDetector(this); //初始化ViewFlipper mViewFlipper = (ViewFlipper) findViewById(R.id.vf); //创建透明动画 AlphaAnimation alphaAnimation = new AlphaAnimation(0.3f, 1.0f); //创建动画持续时间 alphaAnimation.setDuration(1500); //给ViewFlipper 添加动画 mViewFlipper.setAnimation(alphaAnimation); //为ViewFilpper 添加子视图 mViewFlipper.addView(mimageView1, 0); mViewFlipper.addView(mimageView2, 1); mViewFlipper.addView(mimageView3, 2); //长按屏幕,切换子视图效果 if (mGestureDetector.isLongpressEnabled()) { //设置子视图却换的时间间隔 mViewFlipper.setFlipInterval(5500); //开始切换ViewFlipper 中的子视图 mViewFlipper.startFlipping(); } } //设置如何使用手指切换ViewFlipper 中的子视图 @Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { /** * 当手指在x轴向右滑动的距离超过150dp的时候,展示ViewFlipper的下一个视图 */ if ((e1.getX() - e2.getX()) > 150) { this.mViewFlipper.setInAnimation(AnimationUtils .loadAnimation(this, android.R.anim.fade_in)); this.mViewFlipper.setOutAnimation(AnimationUtils .loadAnimation(this, android.R.anim.fade_out)); this.mViewFlipper.showNext(); return true; } else if ((e1.getX() - e2.getX()) < -150) { this.mViewFlipper.setInAnimation(AnimationUtils .loadAnimation(this, android.R.anim.fade_in)); this.mViewFlipper.setOutAnimation(AnimationUtils .loadAnimation(this, android.R.anim.fade_out)); this.mViewFlipper.showPrevious(); return true; } return false; } @Override public boolean onDown(MotionEvent e) { return false; } @Override public void onShowPress(MotionEvent e) { } @Override public boolean onSingleTapUp(MotionEvent e) { return false; } @Override public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { return false; } @Override public void onLongPress(MotionEvent e) { }}
行了,这两段代码添加进去就可以了,自己找三张图添加进去就OK了。
这就是今天想要分享的内容,大家有什么想知道的,我会尽我努力去搞出来,欢迎大家提出你们的建议~
0 0
- ViewFlipper 视图容器
- 滑动视图ViewFlipper
- ViewFlipper 视图切换组件 ViewAnimator
- ViewFlipper(翻转视图)使用详解
- Android用ViewFlipper动态加载图片视图
- ViewFlipper(翻转视图)的基本使用
- 2.11 ViewFlipper(翻转视图)的使用
- ViewFlipper
- ViewFlipper
- ViewFlipper
- ViewFlipper
- ViewFlipper
- ViewFlipper
- ViewFlipper
- ViewFlipper
- ViewFlipper
- ViewFlipper
- ViewFlipper
- html常识(与css、javascript三者的关联关系)
- 能否在一个构造器中调用另一个构造器
- poj 1201 Intervals
- oracle的增删改插和子查询
- 设计模式笔记——策略设计模式
- ViewFlipper 视图容器
- HDU 3642 Get The Treasury 【线段树】【扫描线】
- opencv如何进行摄像头标定
- hbase安装说明
- opencv学习(十四)之图像颜色通道分离和融合
- Java金融信息交换引擎 QuickFIX/J
- Bean和Map的互转+Demo
- 狡猾的商人_bzoj1202_差分约束
- Hadoop安装说明