zoukankan      html  css  js  c++  java
  • 实现BaseFragment

    package liu.basedemo.base;
    
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.support.annotation.Nullable;
    import android.support.v4.app.Fragment;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.ViewGroup;
    
    import liu.basedemo.R;
    
    /**
     * Fragment基类
     * Created by 刘楠 on 2016/7/28 0028.21:45
     */
    public abstract class BaseFragment extends Fragment {
    
        private Activity mActivity;
    
        @Override
        public void onCreate(@Nullable Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            mActivity = getActivity();
        }
    
        @Nullable
        @Override
        public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    
            View rootView = bindLayout(inflater);
            return rootView;
        }
    
        /**
         * 子类必须实现
         *
         * @param inflater
         * @return
         */
        protected abstract View bindLayout(LayoutInflater inflater);
    
        @Override
        public void onActivityCreated(@Nullable Bundle savedInstanceState) {
            super.onActivityCreated(savedInstanceState);
    
            initData();
            initListener();
        }
    
    
        /**
         * 子类可以不实现
         */
        private void initData() {
    
        }
    
        /**
         * 子类可以不实现
         */
        private void initListener() {
    
        }
    
        /**
         * 加载过场动画
         *
         * @param intent 意图
         */
        @Override
        public void startActivity(Intent intent) {
            super.startActivity(intent);
            /**
             * 过场动画
             */
            mActivity.overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left);
        }
    
        /**
         * 加载过场动画
         *
         * @param intent      意图
         * @param requestCode 请求码
         */
        @Override
        public void startActivityForResult(Intent intent, int requestCode) {
            super.startActivityForResult(intent, requestCode);
    
            mActivity.overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left);
        }
    
        /**
         * 加载过场动画
         */
        @Override
        public void onDestroy() {
            super.onDestroy();
            mActivity.overridePendingTransition(R.anim.slide_in_left, R.anim.slide_out_right);
        }
    
    
    }
  • 相关阅读:
    转载:SQL Server错误 2812 :未能找到存储过程 ***的解决方法
    转载:mysql5.7设置不区分大小写
    无法对数据库'XXX' 执行删除,因为它正用于复制"
    Win7 64位 部分软件和文档字体显示乱码
    转载:创建对于用户sa失败,sa无法映射到数据库
    sqlserver 用户角色权限
    转发:Nginx可视化配置工具—NginxWebUI
    docker-compose安装
    导入导出windows 防火墙规则
    python 打包pyinstaller 问题记录
  • 原文地址:https://www.cnblogs.com/liunanjava/p/5716498.html
Copyright © 2011-2022 走看看