如何在制表符/片段转换之间设置新的浮动操作按钮的动画?

时间:2015-07-09 13:59:12

标签: android floating-action-button

从新的Design Support Library开始,我想动画浮动操作按钮(FAB),以便在片段或标签更改时缩小和展开。

enter image description here

我尝试了几种转换,但是无法像this中的示例那样顺利和连接,所以我认为有更好的方法或正确的方法来做到这一点。

2 个答案:

答案 0 :(得分:7)

ViewPager.OnPageChangeListener()我会使用btn.setScaleY()btn.setScaleX(),具体取决于onPageScrolled()方法的偏移量。

答案 1 :(得分:0)

最简单的方法:

viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {}

        @Override
        public void onPageSelected(int position) {}

        @Override
        public void onPageScrollStateChanged(int state) {
            switch (state) {
                case ViewPager.SCROLL_STATE_IDLE:
                    switch (viewPager.getCurrentItem()) {
                        case 0: {
                            fab.setImageResource(R.drawable.your_drawable);
                            fab.show();
                            break;
                        }
                        case 1: {
                            fab.setImageResource(R.drawable.your_another_drawable);
                            fab.show();
                            break;
                        }
                    }
                    break;
                case ViewPager.SCROLL_STATE_DRAGGING:
                case ViewPager.SCROLL_STATE_SETTLING:
                    fab.hide();
                    break;
            }

重要:要提高绘图效果,请尝试使用.svg格式,或者减小png的大小。