content: package me.drakeet.androidviewhoverdemo;
  
  import android.app.Activity;
  import android.os.Bundle;
  import android.support.v4.app.Fragment;
  import android.support.v4.widget.SwipeRefreshLayout;
  import android.view.LayoutInflater;
  import android.view.Menu;
  import android.view.MenuInflater;
  import android.view.MenuItem;
  import android.view.View;
  import android.view.ViewGroup;
  import android.widget.Toast;
  
  import com.daimajia.androidanimations.library.Techniques;
  import com.daimajia.androidanimations.library.YoYo;
  import com.daimajia.androidviewhover.BlurLayout;
  
  import butterknife.InjectView;
  
  /**
   * Created by drakeet on 11/19/14.
   */
  public class LayoutFragment extends Fragment {
      /**
       * The fragment argument representing the section number for this
       * fragment.
       */
      private static final String ARG_SECTION_NUMBER = "section_number";
  
      public static BlurLayout sBlurLayout;
  
      /**
       * Returns a new instance of this fragment for the given section
       * number.
       */
      public static LayoutFragment newInstance(int sectionNumber) {
          LayoutFragment fragment = new LayoutFragment();
          Bundle args = new Bundle();
          args.putInt(ARG_SECTION_NUMBER, sectionNumber);
          fragment.setArguments(args);
          return fragment;
      }
  
      public LayoutFragment() {
      }
  
      @Override
      public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setHasOptionsMenu(true);
      }
  
      @Override
      public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
          View rootView = inflater.inflate(R.layout.fragment_main, container, false);
          initBlurLayout(rootView);
          return rootView;
      }
  
      @Override
      public void onAttach(Activity activity) {
          super.onAttach(activity);
          ((MainActivity) activity).onSectionAttached(
                  getArguments().getInt(ARG_SECTION_NUMBER)
          );
      }
  
      private void initBlurLayout(View context) {
          BlurLayout.setGlobalDefaultDuration(450);
          sBlurLayout = (BlurLayout) context.findViewById(R.id.blur_layout);
          View hover = LayoutInflater.from(getActivity()).inflate(R.layout.hover_main, null);
  
          hover.findViewById(R.id.hover_menu_ershou).setOnClickListener(
                  new View.OnClickListener() {
                      @Override
                      public void onClick(View v) {
                          YoYo.with(Techniques.Tada)
                                  .duration(550)
                                  .playOn(v);
                          showMessage("0");
                      }
                  }
          );
          hover.findViewById(R.id.hover_menu_lvyou).setOnClickListener(
                  new View.OnClickListener() {
                      @Override
                      public void onClick(View v) {
                          YoYo.with(Techniques.Swing)
                                  .duration(550)
                                  .playOn(v);
                          showMessage("1");
                      }
                  }
          );
          hover.findViewById(R.id.hover_menu_wenda).setOnClickListener(
                  new View.OnClickListener() {
                      @Override
                      public void onClick(View v) {
                          YoYo.with(Techniques.Bounce)
                                  .duration(550)
                                  .playOn(v);
                          showMessage("2");
                      }
                  }
          );
          hover.findViewById(R.id.hover_menu_tantian).setOnClickListener(
                  new View.OnClickListener() {
                      @Override
                      public void onClick(View v) {
                          YoYo.with(Techniques.Tada)
                                  .duration(550)
                                  .playOn(v);
                          showMessage("3");
                      }
                  }
          );
          sBlurLayout.setHoverView(hover);
          sBlurLayout.setBlurDuration(550);
  
          sBlurLayout.addChildAppearAnimator(hover, R.id.hover_menu_ershou, Techniques.FlipInX);
          sBlurLayout.addChildAppearAnimator(hover, R.id.hover_menu_lvyou, Techniques.FlipInX);
          sBlurLayout.addChildAppearAnimator(hover, R.id.hover_menu_wenda, Techniques.FlipInX);
          sBlurLayout.addChildAppearAnimator(hover, R.id.hover_menu_tantian, Techniques.FlipInX);
  
          sBlurLayout.addChildDisappearAnimator(hover, R.id.hover_menu_ershou, Techniques.FlipOutX);
          sBlurLayout.addChildDisappearAnimator(hover, R.id.hover_menu_lvyou, Techniques.FlipOutX);
          sBlurLayout.addChildDisappearAnimator(hover, R.id.hover_menu_wenda, Techniques.FlipOutX);
          sBlurLayout.addChildDisappearAnimator(hover, R.id.hover_menu_tantian, Techniques.FlipOutX);
  
          sBlurLayout.addChildAppearAnimator(hover, R.id.description, Techniques.FadeInUp);
          sBlurLayout.addChildDisappearAnimator(hover, R.id.description, Techniques.FadeOutDown);
      }
  
      private void showMessage(String s) {
          Toast.makeText(getActivity(), s, Toast.LENGTH_SHORT).show();
      }
  
      @Override
      public boolean onOptionsItemSelected(MenuItem item) {
          switch (item.getItemId()) {
              case R.id.action_overflow:
                  sBlurLayout.toggleHover();
                  return true;
              default:
                  return super.onOptionsItemSelected(item);
          }
      }
  
  }
  