zoukankan      html  css  js  c++  java
  • fragement切换动画效果的实现

    标准动画:

    fragementTransaction.setTransition(FragmentTransation.TRANSIT_FRAGMENT_CLOSE);
    自定义动画:
    fragementTransaction.setCustomAnimations();
    通过属性动画定义切换的动画细节:
    fragment_left_enter.xml
    1. <?xml version="1.0" encoding="utf-8"?>
      <setxmlns:android="http://schemas.android.com/apk/res/android">
      <objectAnimator
      android:interpolator="@android:interpolator/decelerate_quint"
      android:valueFrom="-100dp"android:valueTo="0dp"
      android:valueType="floatType"
      android:propertyName="translationX"
      android:duration="@android:integer/config_mediumAnimTime"/>
      <objectAnimator
      android:interpolator="@android:interpolator/decelerate_quint"
      android:valueFrom="0.0"android:valueTo="1.0"
      android:valueType="floatType"
      android:propertyName="alpha"
      android:duration="@android:integer/config_mediumAnimTime"/>
      </set>
    fragment_left_exit.xml
    1. <?xml version="1.0" encoding="utf-8"?>
      <setxmlns:android="http://schemas.android.com/apk/res/android">
      <objectAnimator
      android:interpolator="@android:interpolator/decelerate_quint"
      android:valueFrom="0dp"android:valueTo="100dp"
      android:valueType="floatType"
      android:propertyName="translationX"
      android:duration="@android:integer/config_mediumAnimTime"/>
      <objectAnimator
      android:interpolator="@android:interpolator/decelerate_quint"
      android:valueFrom="1.0"android:valueTo="0.0"
      android:valueType="floatType"
      android:propertyName="alpha"
      android:duration="@android:integer/config_mediumAnimTime"/>
      </set>
    fragment_pop_left_enter.xml
    1. <?xml version="1.0" encoding="utf-8"?>
      <setxmlns:android="http://schemas.android.com/apk/res/android">
      <objectAnimator
      android:interpolator="@android:interpolator/decelerate_quint"
      android:valueFrom="100dp"android:valueTo="0dp"
      android:valueType="floatType"
      android:propertyName="translationX"
      android:duration="@android:integer/config_mediumAnimTime"/>
      <objectAnimator
      android:interpolator="@android:interpolator/decelerate_quint"
      android:valueFrom="0.0"android:valueTo="1.0"
      android:valueType="floatType"
      android:propertyName="alpha"
      android:duration="@android:integer/config_mediumAnimTime"/>
      </set>
    fragment_pop_left_exit.xml
    1. <?xml version="1.0" encoding="utf-8"?>
      <setxmlns:android="http://schemas.android.com/apk/res/android">
      <objectAnimator
      android:interpolator="@android:interpolator/decelerate_quint"
      android:valueFrom="0dp"android:valueTo="-100dp"
      android:valueType="floatType"
      android:propertyName="translationX"
      android:duration="@android:integer/config_mediumAnimTime"/>
      <objectAnimator
      android:interpolator="@android:interpolator/decelerate_quint"
      android:valueFrom="1.0"android:valueTo="0.0"
      android:valueType="floatType"
      android:propertyName="alpha"
      android:duration="@android:integer/config_mediumAnimTime"/>
      </set>
    使用的时候:
    fragmentTransaction.setCustomAnimations(
         R.animator.fragment_left_enter,
         R.animator.fragment_left_exit,
         R.animator.fragment_pop_left_enter,
         R.animator.fragment_pop_left_exit);
  • 相关阅读:
    Maven安装与配置
    win10更新后程序路径盘符变成*星号解决方法
    谈谈 CSS 关键字 initial、inherit 和 unset
    用 async/await 来处理异步
    Vuex
    HTML5新特性之文件和二进制数据的操作 Blob对象
    vue中class和内联style绑定
    Petya and Staircases CF212div.2B
    CF#212 Two Semiknights Meet
    HDU1423最长上升公共子序列
  • 原文地址:https://www.cnblogs.com/androidsuperman/p/8a2c1afc8eaaa464c216c3b94e1ea5a2.html
Copyright © 2011-2022 走看看