zoukankan      html  css  js  c++  java
  • Fragment的切换动画实现

    private void addFragment() {
        if (null == mFragmentManager) {
            mFragmentManager = getFragmentManager();
        }
     
        mTextFragmentOne = new MyFragmentOne();
        FragmentTransaction fragmentTransaction = mFragmentManager
                .beginTransaction();
     
        // 标准动画
        
    // fragmentTransaction
        
    // .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
        
    // fragmentTransaction
        
    // .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
     
        
    // fragmentTransaction
        
    // .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE);
     
        
    // 自定义动画
     
        
    // API LEVEL 11
        
    // fragmentTransaction.setCustomAnimations(
        
    // R.animator.fragment_slide_left_enter,
        
    // R.animator.fragment_slide_right_exit);
     
        
    // API LEVEL 13
        fragmentTransaction.setCustomAnimations(
         R.animator.fragment_left_enter,
         R.animator.fragment_left_exit,
         R.animator.fragment_pop_left_enter,
         R.animator.fragment_pop_left_exit);
     
        fragmentTransaction.add(R.id.container, mTextFragmentOne);
     
        // 加入到BackStack中
        fragmentTransaction.addToBackStack(null);
        fragmentTransaction.commit();
     
    }
     
    private void removeFragment() {
        if (null == mFragmentManager) {
            mFragmentManager = getFragmentManager();
        }
        mFragmentManager.popBackStack();
    }
    View Code

    animator的文件定义

    fragment_left_enter.xml

    View Code 

       fragment_left_exit.xml

    <?xml version="1.0" encoding="utf-8"?>
        <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
    <?xml version="1.0" encoding="utf-8"?>
        <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

    <?xml version="1.0" encoding="utf-8"?>
        <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>
  • 相关阅读:
    实现三联tab切换特效
    SQL Server对数据进行添加
    SmartUpload实现文件上传
    JavaScript图片轮播,举一反三
    SQL Server对数据进行删除
    用SQL Server查询所有数据并显示
    SQL Server日期格式化
    用SQL Server验证用户名和密码
    SQL Server存储过程作业(三)
    SQL Server存储过程作业(二)
  • 原文地址:https://www.cnblogs.com/wsfjlagr/p/4234110.html
Copyright © 2011-2022 走看看