大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Android ViewFlipper的详解
专注于为中小企业提供做网站、成都做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业承德免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千余家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
前言:
View Flipper,是ViewAnimator的子类,而ViewAnimator又是继承自FrameLayout,而FrameLayout就是平时基本上只显示一个子视图的布局,由于FrameLayout下不好确定子视图的位置,所以很多情况下子视图之前存在相互遮挡,这样就造成了很多时候我们基本上只要求FrameLayout显示一个子视图,然后通过某些控制来实现切换。正好,ViewFlipper帮我们实现了这个工作,我们需要做的就是,选择恰当的时机调用其恰当的方法即可
类结构
方法 | 意义 |
---|---|
startFlipping | 开始浏览 |
stopFlipping | 停止浏览 |
setFlipInterval | 设置View之间切换的时间间隔 |
getAccessibilityClassName | 获取类名称 |
isFlipping | 判断是否正在浏览 |
setAutoStart | 设置是否自动开始浏览 |
isAutoStart | 判断是否为自动开始浏览 |
基本使用
1. 动画定义
scalein.xml
<?xml version="1.0" encoding="utf-8"?>
scaleout.xml
<?xml version="1.0" encoding="utf-8"?>
2. 布局文件
activity_main.xml
<?xml version="1.0" encoding="utf-8"?><!--渐入动画 和 渐出动画定义-->
3. 左右滑动切换
public class MainActivity extends AppCompatActivity { private ViewFlipper viewFlipper = null; float PosX = 0, CurrentX = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); toolbar.setNavigationIcon(R.drawable.left); setSupportActionBar(toolbar);//设置ActionBar viewFlipper = (ViewFlipper) findViewById(R.id.vf); } @Override public boolean onTouchEvent(MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: PosX = event.getX(); break; case MotionEvent.ACTION_MOVE: CurrentX = event.getX(); break; case MotionEvent.ACTION_UP: if (CurrentX - PosX > 25.0) {//向右滑动切换到上一页 viewFlipper.showPrevious(); } else if (CurrentX - PosX < -25.0) {//向左滑动,切换到下一页 viewFlipper.showNext(); } } return true; } }
实际效果
以上就是Android ViewFlipper的使用方法,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!