Skip to content

wutongke/AndroidSkinAnimator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

b0716bf · Jul 9, 2018

History

82 Commits
Mar 1, 2017
Mar 1, 2017
Feb 28, 2017
Jan 12, 2017
Feb 26, 2017
Feb 24, 2017
Jan 18, 2017
Mar 1, 2017
Feb 26, 2017
Jan 12, 2017
Jul 9, 2018
Feb 26, 2017
Jan 12, 2017
Jan 12, 2017
Jan 12, 2017
Feb 27, 2017

Repository files navigation

换肤方案:

Android-skin-support

换肤时增加了动画

增加了一些View动画

全局动画

全局动画和换肤原理相同,直接替换了View组件,原理可以参考Android-skin-support

原理概述

了解过换肤框架的同学知道,利用setFactory(LayoutInflater inflater, LayoutInflaterFactory factory)可以在不更新布局文件的情况下替换布局中View为自定义View,并且对开发者透明。利用这个原理我们可以把原生的View替换为支持动画的View,如TexView在执行setText、setVisibility等操作时执行动画。

同时提供动画执行等开关,在需要时打开,在不需要时关闭即可。

使用说明

  • 1.继承SkinCompatActivity, 同时支持了换肤功能

  • 2.如果Activity需要支持全局动画,覆盖方法:

    @Override
    protected boolean needAnimator() {
        return true;
    }

如果不需要,则不用理会

  • 3.在Activity中设置动画配置:
        setAnimatorConfig(new AnimatorConfig
                .Builder()
                .textviewTextAnimationType(ViewAnimatorType.AlphaUpdateAnimator)
                .textviewVisibleAnimationType(ViewAnimatorType.TranslationAlphaHideAnimator)
                .build());

在其它地方设置配置:

AnimatorManager.setConfig(new AnimatorConfig.Builder()
                        .textviewVisibleAnimationType(ViewAnimatorType.TranslationAlphaHideAnimator)
                        .textviewTextAnimationType(ViewAnimatorType.AlphaUpdateAnimator)
                        .build());
  • 4.在需要的地方打开关闭动画:
AnimatorManager.openAnimator();

AnimatorManager.closeAnimator();

致谢

About

皮肤切换动画,支持全局View animation everywhere

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages