热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Activity切换效果,阿里P8大牛手把手教你

代码实现设置方法场景:Activitya跳转到Activityb启动时设置在Activitya中编写代码IntentintentnewIntent(this,Acvtivity.c



代码实现

====


设置方法


场景:Activity a 跳转到 Activity b


  • 启动时设置 在 Activity a 中编写代码


Intent intent = new Intent (this,Acvtivity.class);
startActivity(intent);
overridePendingTransition(R.anim.enter_anim,R.anim.exit_anim);
// 采用overridePendingTransition(int enterAnim, int exitAnim)进行设置
// enterAnim:从Activity a跳转到Activity b,进入b时的动画效果资源ID,这个动画由 b 来展示
// exitAnim:从Activity a跳转到Activity b,离开a时的动画效果资源Id ,这个动画由 a 来展示
// 特别注意
// overridePendingTransition()必须要在startActivity(intent)后被调用才能生效

  • 退出时设置 在 Activity b 中编写代码


@Override
public void finish(){
super.finish();

overridePendingTransition(R.anim.enter_anim,R.anim.exit_anim);
// 采用overridePendingTransition(int enterAnim, int exitAnim)进行设置
// enterAnim:从Activity b返回到Activity a,进入a时的动画效果资源ID ,这个动画由 a 来展示
// exitAnim:从Activity b返回到Activity a,离开b时的动画效果资源Id ,这个动画由 b 来展示
// 特别注意
// overridePendingTransition()必须要在finish()后被调用才能生效
}

利用系统默认动画设置


对于参数 enterAnimexitAnim 的资源ID,系统有自带的效果android.R.anim.xxx,如下设置:

对应启动时设置


package com.wust.myanimation;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.ViewAnimationUtils;
import android.view.animation.AlphaAnimation;
import android.view.animation.Animation;
import android.view.animation.AnimationSet;
import android.view.animation.AnimationUtils;
import android.view.animation.BounceInterpolator;
import android.view.animation.RotateAnimation;
import android.view.animation.ScaleAnimation;
import android.view.animation.TranslateAnimation;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
private TextView tv_hello_world;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void tiaozhuan(View view) {
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
startActivity(intent);
//淡入 淡出 的动画效果
// overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out);
//从左向右 的滑动效果
overridePendingTransition(android.R.anim.slide_in_left,android.R.anim.slide_out_right);
}
}

对应退出时设置


package com.wust.myanimation;
import android.os.Bundle;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
/**
* ClassName: SecondActivity

* Description:

* date: 2021/7/18 12:43

*
* @author yiqi

* @QQ 1820762465
* @微信 yiqiideallife
* @技术交流QQ群 928023749
*/
public class SecondActivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
}
@Override
public void finish() {
super.finish();
//淡入 淡出 的动画效果
overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out);
//从左向右 的滑动效果
// overridePendingTransition(android.R.anim.slide_in_left,android.R.anim.slide_out_right);
}
}

效果展示


利用自定义动画设置


第一步:在 res/anim/ 文件夹下分别创建 enter.xml 和 exit.xml 文件


// enter.xml


android:pivotY="0%p"
android:fromXScale="0%p"
android:toXScale="100%p"
android:fromYScale="0%p"
android:toYScale="100%p"/>

//exit.xml


结尾

最后小编想说:不论以后选择什么方向发展,目前重要的是把Android方面的技术学好,毕竟其实对于程序员来说,要学习的知识内容、技术有太多太多,要想不被环境淘汰就只有不断提升自己,从来都是我们去适应环境,而不是环境来适应我们!

当程序员容易,当一个优秀的程序员是需要不断学习的,从初级程序员到高级程序员,从初级架构师到资深架构师,或者走向管理,从技术经理到技术总监,每个阶段都需要掌握不同的能力。早早确定自己的职业方向,才能在工作和能力提升中甩开同龄人。

想要拿高薪实现技术提升薪水得到质的飞跃。最快捷的方式,就是有人可以带着你一起分析,这样学习起来最为高效,所以为了大家能够顺利进阶中高级、架构师,我特地为大家准备了一套高手学习的源码和框架视频等精品Android架构师教程,保证你学了以后保证薪资上升一个台阶。

CodeChina开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》

当你有了学习线路,学习哪些内容,也知道以后的路怎么走了,理论看多了总要实践的。

高级UI,自定义View

UI这块知识是现今使用者最多的。当年火爆一时的Android入门培训,学会这小块知识就能随便找到不错的工作了。

不过很显然现在远远不够了,拒绝无休止的CV,亲自去项目实战,读源码,研究原理吧!

题+项目实战源码》](https://codechina.csdn.net/m0_60958482/android_p7)**

当你有了学习线路,学习哪些内容,也知道以后的路怎么走了,理论看多了总要实践的。

[外链图片转存中…(img-7KqljLn6-1630720227238)]

高级UI,自定义View

UI这块知识是现今使用者最多的。当年火爆一时的Android入门培训,学会这小块知识就能随便找到不错的工作了。

不过很显然现在远远不够了,拒绝无休止的CV,亲自去项目实战,读源码,研究原理吧!

[外链图片转存中…(img-dH8Rcbaz-1630720227240)]



推荐阅读
author-avatar
北京盛世诚泰家具有限公司
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有