Activity中

public void click(View view){
Intent intent = new Intent();
intent.setClass(this, TwoActivity.class);
startActivity(intent);
overridePendingTransition(R.anim.enter, R.anim.exit); //第一个参数为第一个Activity离开时的动画,第二参数为所进入的Activity的动画效果,这个方法必须在 startActivity()之后
}
public void click(View view){
Intent intent = new Intent();
intent.setClass(this, TwoActivity.class);
startActivity(intent);
overridePendingTransition(R.anim.enter, R.anim.exit);//R.anim.exit
//第一个参数是进入第2个Activity(即第二个Activity)的动画,第二个参数是第一个Activity离开时候的动画(即第一个Activity的动画)
//发现网上很多都是乱说,甚至不对,专门根据 旋转测试一下效果,发现这两个动画是同时执行的,且我们知道新启动的Activity是在最上面的,动画也是在最上面
//overridePendingTransition(0, R.anim.exit);//测试此句发现 没有任何动画效果,(其实有,只是我们看不到) ,0表示无动画,这段代码 this.finish()是可以看到的,注意动画 只显示 栈顶那个Activity }

如果上面两个参数没有动画要设置,则用0作为参数。

Fragment中

private void addFragment() {
if (null == mFragmentManager) {
mFragmentManager = getSupportFragmentManager();
} mTextFragmentOne = new MyFragmentOne();
FragmentTransaction fragmentTransaction = mFragmentManager
.beginTransaction();
fragmentTransaction.setCustomAnimations(
R.anim.push_left_in,
R.anim.push_left_out,
R.anim.push_left_in,
R.anim.push_left_out); fragmentTransaction.add(R.id.container, mTextFragmentOne); fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
}

例子:

4个 Fragment 慢慢滑动的效果

FragmentTransaction ft = getFragmentManager().beginTransaction();

//设置进入退出动画

// transaction.setCustomAnimations(R.anim.fragment_enter,R.anim.fragment_out); // A(fragment)-->B(fragment) enter是B的动画,out是A的动画

ft.setCustomAnimations(R.anim.slide_in_left, R.anim.slide_out_right);

DetailsFragment newFragment = DetailsFragment.newInstance();

ft.replace(R.id.details_fragment_container, newFragment, "detailFragment");

// Start the animated transition.

ft.commit();

下面是anim目录下的动画

enter_from_left.xml

<translate
android:fromXDelta="-100%" android:toXDelta="0%"
android:fromYDelta="0%" android:toYDelta="0%"
android:duration="700"/>

enter_from_right.xml

<translate
android:fromXDelta="100%" android:toXDelta="0%"
android:fromYDelta="0%" android:toYDelta="0%"
android:duration="700" />

enter_from_right.xml

<translate
android:fromXDelta="0%" android:toXDelta="-100%"
android:fromYDelta="0%" android:toYDelta="0%"
android:duration="700"/>

exit_to_right.xml

<translate
android:fromXDelta="0%" android:toXDelta="100%"
android:fromYDelta="0%" android:toYDelta="0%"
android:duration="700" />

最新文章

  1. angular $resource模块
  2. ORACLE中创建和删除临时表
  3. Linux入门视频
  4. oracle视图索引
  5. bzoj 3153: Sone1 Toptree
  6. Bridge实现
  7. Codeforces Round #205 (Div. 2) : D
  8. HihoCoder
  9. Activity, Service,Task, Process and Thread之间的关系
  10. MS SQL自定义函数IsPositiveInteger
  11. 2.4 逻辑运算符 &amp;&amp;(与)、||(或)、非(!)
  12. C++实现根据路径读取文件内容
  13. Oracle中保留两位小数
  14. Laravel: 基础篇
  15. callback 模式
  16. PAT-GPLT训练集 L2-002 链表去重
  17. ios成长之每日一遍(day 7)
  18. caffe with anaconda
  19. MAC OS X的命令行技巧
  20. CloudStack 注册模板脚本分析

热门文章

  1. [jquery] 删除文章的时候弹出确认窗口
  2. Elasticsearch使用java读取数据报错NoNodeAvailableException: None of the configured nodes are available: [127.0.0.1:9300]
  3. uestc1633
  4. HDU 1754 I Hate It&lt;区间最值 单点修改&gt;
  5. [SRM570]TheTiles
  6. 【二分答案】【哈希表】【字符串哈希】bzoj2946 [Poi2000]公共串
  7. FCL研究-目录
  8. sql-server-linux 官网
  9. mac下更新自带的PHP版本到5.6或7.0
  10. easyui datagrid加载成功之后选定并获取首行数据