android - 以编程方式为 ActionBarDrawerToggle 图标设置动画

标签 android android-actionbar android-appcompat android-5.0-lollipop

我想手动将抽屉图标从汉堡变成箭头,反之亦然,不仅是在拖动抽屉时,这可能吗?我正在使用支持库 appcompat-v7:21。

我也找不到 android.support.v7.app.ActionBarDrawerToggle 的源代码,这会有帮助。

最佳答案

我找到了一种使用简单的 ValueAnimator 和 .onDrawerSlide 方法为图标设置动画的方法。

    ValueAnimator anim = ValueAnimator.ofFloat(start, end);
    anim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(ValueAnimator valueAnimator) {
            float slideOffset = (Float) valueAnimator.getAnimatedValue();
            drawerToggle.onDrawerSlide(drawerLayout, slideOffset);
        }
    });
    anim.setInterpolator(new DecelerateInterpolator());
    anim.setDuration(300);
    anim.start();

但也许有更好的解决方案。

关于android - 以编程方式为 ActionBarDrawerToggle 图标设置动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26479470/

相关文章:

java - 在 Activity 中添加后退按钮

java - 最后调用 super

android - 为什么 Android Jetpack Compose snapShotFlow 在配置更改时重新发出最后一个值

android - 添加带抽屉导航的操作栏按钮?

android - Android 操作栏的最佳实践

android - 我需要你的帮助,让 android studio 解决 gradle 错误

android - AppCompat v7 :21 Split Action Bar Broken?

android - 在 fragment 之间滑动时如何改变 ActionBar 颜色( Material 设计)?

java - android:如何更改后退箭头形状?

android - 无法将 android-support-v7-appcompat 连接到我的项目