// Path: classic/src/main/java/com/classic/core/fragment/BaseFragment.java
// public abstract class BaseFragment extends Fragment
//         implements IFragment, IRegister, View.OnClickListener, EasyPermissions.PermissionCallbacks {
//     private static final String SP_NAME         = "firstConfig";
//     private static final String STATE_IS_HIDDEN = "isHidden";
// 
//     protected Activity mActivity;
// 
//     @Override public void onAttach(Context context) {
//         super.onAttach(context);
//         mActivity = getActivity();
//     }
// 
//     @Override public void onSaveInstanceState(Bundle outState) {
//         super.onSaveInstanceState(outState);
//         outState.putBoolean(STATE_IS_HIDDEN, isHidden());
//     }
// 
//     @Override
//     public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
//         View parentView = inflater.inflate(getLayoutResId(), container, false);
//         SharedPreferencesUtil spUtil = new SharedPreferencesUtil(mActivity, SP_NAME);
//         final String simpleName = this.getClass().getSimpleName();
//         if (spUtil.getBooleanValue(simpleName, true)) {
//             onFirst();
//             spUtil.putBooleanValue(simpleName, false);
//         }
//         initData();
//         initView(parentView, savedInstanceState);
//         return parentView;
//     }
// 
// 
//     @Override public void onViewCreated(View view, Bundle savedInstanceState) {
//         super.onViewCreated(view, savedInstanceState);
//         if(savedInstanceState != null){
//             boolean isHidden = savedInstanceState.getBoolean(STATE_IS_HIDDEN);
//             FragmentTransaction transaction = getFragmentManager().beginTransaction();
//             if(isHidden){
//                 transaction.hide(this);
//                 onFragmentHide();
//             } else {
//                 transaction.show(this);
//                 onFragmentShow();
//             }
//             transaction.commit();
//         }
//         register();
//     }
// 
// 
//     @Override public void onDestroyView() {
//         unRegister();
//         super.onDestroyView();
//     }
// 
//     @Override public void onRequestPermissionsResult(
//             int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
//         super.onRequestPermissionsResult(requestCode, permissions, grantResults);
//         EasyPermissions.onRequestPermissionsResult(requestCode, permissions, grantResults, this);
//     }
// 
//     @Override public void onFirst() { }
//     @Override public void initData() { }
//     @Override public void initView(View parentView, Bundle savedInstanceState) { }
//     @Override public void register() { }
//     @Override public void unRegister() { }
//     @Override public void onFragmentShow() { }
//     @Override public void onFragmentHide() { }
//     @Override public void showProgress() { }
//     @Override public void hideProgress() { }
//     @Override public void viewClick(View v) { }
//     @Override public void onPermissionsGranted(int requestCode, List<String> perms) { }
//     @Override public void onPermissionsDenied(int requestCode, List<String> perms) { }
// 
//     @Override public void onClick(View v) {
//         viewClick(v);
//     }
// }
// 
// Path: classic/src/main/java/com/classic/core/utils/ToastUtil.java
// public final class ToastUtil {
//     private ToastUtil() {}
// 
// 
//     public static void showToast(Context context, String text) {
//         Toast.makeText(context, text, Toast.LENGTH_SHORT).show();
//     }
// 
// 
//     public static void showToast(Context context, int resId) {
//         Toast.makeText(context, context.getResources().getText(resId),
//                 Toast.LENGTH_SHORT).show();
//     }
// 
// 
//     public static void showLongToast(Context context, String text) {
//         Toast.makeText(context, text, Toast.LENGTH_LONG).show();
//     }
// 
// 
//     public static void showLongToast(Context context, int resId) {
//         Toast.makeText(context, context.getResources().getText(resId),
//                 Toast.LENGTH_LONG).show();
//     }
// }


import com.classic.core.fragment.BaseFragment;
import com.classic.core.utils.ToastUtil;
import com.classic.simple.R;
package com.classic.simple.fragment;


public class ImageFragment extends BaseFragment {

    @Override public int getLayoutResId() {
        return R.layout.fragment_image;
    }

    @Override public void onFragmentShow() {
        super.onFragmentShow();
        ToastUtil.showToast(getActivity(), "ImageFragment --> onFragmentShow()");
    }

    @Override public void onFragmentHide() {
        super.onFragmentHide();
// Path: classic/src/main/java/com/classic/core/fragment/BaseFragment.java
// public abstract class BaseFragment extends Fragment
//         implements IFragment, IRegister, View.OnClickListener, EasyPermissions.PermissionCallbacks {
//     private static final String SP_NAME         = "firstConfig";
//     private static final String STATE_IS_HIDDEN = "isHidden";
// 
//     protected Activity mActivity;
// 
//     @Override public void onAttach(Context context) {
//         super.onAttach(context);
//         mActivity = getActivity();
//     }
// 
//     @Override public void onSaveInstanceState(Bundle outState) {
//         super.onSaveInstanceState(outState);
//         outState.putBoolean(STATE_IS_HIDDEN, isHidden());
//     }
// 
//     @Override
//     public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
//         View parentView = inflater.inflate(getLayoutResId(), container, false);
//         SharedPreferencesUtil spUtil = new SharedPreferencesUtil(mActivity, SP_NAME);
//         final String simpleName = this.getClass().getSimpleName();
//         if (spUtil.getBooleanValue(simpleName, true)) {
//             onFirst();
//             spUtil.putBooleanValue(simpleName, false);
//         }
//         initData();
//         initView(parentView, savedInstanceState);
//         return parentView;
//     }
// 
// 
//     @Override public void onViewCreated(View view, Bundle savedInstanceState) {
//         super.onViewCreated(view, savedInstanceState);
//         if(savedInstanceState != null){
//             boolean isHidden = savedInstanceState.getBoolean(STATE_IS_HIDDEN);
//             FragmentTransaction transaction = getFragmentManager().beginTransaction();
//             if(isHidden){
//                 transaction.hide(this);
//                 onFragmentHide();
//             } else {
//                 transaction.show(this);
//                 onFragmentShow();
//             }
//             transaction.commit();
//         }
//         register();
//     }
// 
// 
//     @Override public void onDestroyView() {
//         unRegister();
//         super.onDestroyView();
//     }
// 
//     @Override public void onRequestPermissionsResult(
//             int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
//         super.onRequestPermissionsResult(requestCode, permissions, grantResults);
//         EasyPermissions.onRequestPermissionsResult(requestCode, permissions, grantResults, this);
//     }
// 
//     @Override public void onFirst() { }
//     @Override public void initData() { }
//     @Override public void initView(View parentView, Bundle savedInstanceState) { }
//     @Override public void register() { }
//     @Override public void unRegister() { }
//     @Override public void onFragmentShow() { }
//     @Override public void onFragmentHide() { }
//     @Override public void showProgress() { }
//     @Override public void hideProgress() { }
//     @Override public void viewClick(View v) { }
//     @Override public void onPermissionsGranted(int requestCode, List<String> perms) { }
//     @Override public void onPermissionsDenied(int requestCode, List<String> perms) { }
// 
//     @Override public void onClick(View v) {
//         viewClick(v);
//     }
// }
// 
// Path: classic/src/main/java/com/classic/core/utils/ToastUtil.java
// public final class ToastUtil {
//     private ToastUtil() {}
// 
// 
//     public static void showToast(Context context, String text) {
//         Toast.makeText(context, text, Toast.LENGTH_SHORT).show();
//     }
// 
// 
//     public static void showToast(Context context, int resId) {
//         Toast.makeText(context, context.getResources().getText(resId),
//                 Toast.LENGTH_SHORT).show();
//     }
// 
// 
//     public static void showLongToast(Context context, String text) {
//         Toast.makeText(context, text, Toast.LENGTH_LONG).show();
//     }
// 
// 
//     public static void showLongToast(Context context, int resId) {
//         Toast.makeText(context, context.getResources().getText(resId),
//                 Toast.LENGTH_LONG).show();
//     }
// }


// Path: app/src/main/java/com/classic/simple/fragment/ImageFragment.java
import com.classic.core.fragment.BaseFragment;
import com.classic.core.utils.ToastUtil;
import com.classic.simple.R;

package com.classic.simple.fragment;


public class ImageFragment extends BaseFragment {

    @Override public int getLayoutResId() {
        return R.layout.fragment_image;
    }

    @Override public void onFragmentShow() {
        super.onFragmentShow();
        ToastUtil.showToast(getActivity(), "ImageFragment --> onFragmentShow()");
    }

    @Override public void onFragmentHide() {
        super.onFragmentHide();
        ToastUtil.showToast(getActivity(), "ImageFragment --> onFragmentHide()");