当前位置: 代码迷 >> Android >> Android中Activity切换时共享视图元素的切换动画(4.x兼容提案)
  详细解决方案

Android中Activity切换时共享视图元素的切换动画(4.x兼容提案)

热度:51   发布时间:2016-04-27 23:43:18.0
Android中Activity切换时共享视图元素的切换动画(4.x兼容方案)

同时发布在我的博客

点此进入

开始

上一篇讲了使用 Google 的 AppCompat-v7 来实现 Activity 切换时实现共享视图元素的切换动画。这一篇介绍两个可以兼容 4.x 的两个第三方方案。

上一篇:Android中Activity切换时共享视图元素的切换动画(5.0以上)

方案一:PreLollipopTransition

preview

首先在 build.gradle 配置文件添加这个库依赖

dependencies {    compile 'com.kogitune:pre-lollipop-activity-transition:1.0.0'}

首先是启动的 Activity 中

findViewById(R.id.imageView).setOnClickListener(new View.OnClickListener() {    @Override    public void onClick(View v) {        final Intent intent = new Intent(MainActivity.this, SubActivity.class);        ActivityTransitionLauncher.with(MainActivity.this).from(v).launch(intent);    }});

在接收这个 Intent 的 Activity 中写如下代码:

@Overrideprotected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_sub);    ActivityTransition.with(getIntent()).to(findViewById(R.id.sub_imageView)).start(savedInstanceState);}

退出动画的实现

private ExitActivityTransition exitTransition;@Overrideprotected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_sub2);    exitTransition = ActivityTransition.with(getIntent()).to(findViewById(R.id.sub_imageView)).start(savedInstanceState);}@Overridepublic void onBackPressed() {    exitTransition.exit(this);}

伸手党的福利:点我跳转代码地址

方案二:ActivityOptionsICS

不再详细描述了

伸手党的福利:点我跳转代码地址

版权声明:本文为博主原创文章,未经博主允许不得转载。

  相关解决方案