Activity切换动画overridePendingTransition
2016-01-19 23:03
197 查看
一:动画资源文件
trans_in.xml<?xml version="1.0" encoding="utf-8"?> <translate xmlns:android="http://schemas.android.com/apk/res/android" android:fromXDelta="100%p" android:toXDelta="0" android:fromYDelta="0" android:toYDelta="0" android:duration="500"> </translate>trans_out.xml
<?xml version="1.0" encoding="utf-8"?> <translate xmlns:android="http://schemas.android.com/apk/res/android" android:fromXDelta="0" android:toXDelta="-100%p" android:fromYDelta="0" android:toYDelta="0" android:duration="500"> </translate>trans_pre_in.xml
<?xml version="1.0" encoding="utf-8"?> <translate xmlns:android="http://schemas.android.com/apk/res/android" android:fromXDelta="-100%p" android:toXDelta="0" android:fromYDelta="0" android:toYDelta="0" android:duration="500"> </translate>trans_pre_out.xml
<?xml version="1.0" encoding="utf-8"?> <translate xmlns:android="http://schemas.android.com/apk/res/android" android:fromXDelta="0" android:toXDelta="100%p" android:fromYDelta="0" android:toYDelta="0" android:duration="500"> </translate>
二:Activity使用动画资源文件跳转
MainActivity.javapublic class MainActivity extends AppCompatActivity implements View.OnClickListener{ private Button btMain; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btMain = (Button) findViewById(R.id.bt_main); btMain.setOnClickListener(this); } private void jumpToSecond(View view){ Intent animIntent = new Intent(MainActivity.this, SecondActivity.class); startActivity(animIntent); //该方法必须在startActivity()或finish()之后调用 //第一个参数是待打开的Activity的动画,第二个参数是当前activity的动画 //要想在activity切换时当前activity无动画,只需修改trans_out使其x轴和y轴均不移动即可 overridePendingTransition(R.anim.trans_in,R.anim.trans_out); } @Override public void onClick(View v) { if(v.getId() == R.id.bt_main){ jumpToSecond(v); } } }SecondActivity.java
public class SecondActivity extends AppCompatActivity implements View.OnClickListener{ private Button btSecond; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_second); btSecond = (Button) findViewById(R.id.bt_second); btSecond.setOnClickListener(this); } private void jumpToFirst(View view){ Intent intent = new Intent(SecondActivity.this,MainActivity.class); startActivity(intent); finish(); //该方法必须在startActivity()或finish()之后调用 overridePendingTransition(R.anim.trans_pre_in,R.anim.trans_pre_out); } @Override public void onClick(View v) { if(v.getId() == R.id.bt_second){ jumpToFirst(v); } } }
相关文章推荐
- CSS3网格布局基础知识 - 弹性尺寸的定义单位:fr 简介及实例
- android144 360 快捷方式
- 89. cURL
- Hibernate 分页查询
- Verilog杂谈
- Java接口与抽象类的区别
- HDU 1160 FatMouse's Speed
- iOSUI-UIScrollView属性,方法大全
- 16-Ajax学习之什么是Ajax,Ajax原理
- 【IOS学习基础】weak和strong、懒加载、循环引用
- PHP Timer 页面运行时间监测类
- 安装配置 redis
- swift手记-2
- aaaa
- poj-1260 -Pearls-DP
- 属性动画+贝塞尔曲线实现落叶效果~~~(@_@;)
- 《HTTP权威指南》学习笔记-HTTP报文
- 操作系统学习笔记:分布式系统结构
- VMWare虚拟机的网络类型配置选择详解
- 巧妙解决百度云管家下载速度慢