/**
  * Init ListView
  *
  * @param attrs AttributeSet
  */
 private void init(AttributeSet attrs) {
   if (attrs != null) {
     TypedArray styled = getContext().obtainStyledAttributes(attrs, R.styleable.SlideListView);
     mAnimationTime = styled.getInteger(R.styleable.SlideListView_slideAnimationTime, 0);
     mSlideMode =
         SlideMode.mapIntToValue(styled.getInteger(R.styleable.SlideListView_slideMode, 0));
     mSlideLeftAction =
         SlideAction.mapIntToValue(
             styled.getInteger(R.styleable.SlideListView_slideLeftAction, 0));
     mSlideRightAction =
         SlideAction.mapIntToValue(
             styled.getInteger(R.styleable.SlideListView_slideRightAction, 0));
     styled.recycle();
   }
   mTouchListener = new SlideTouchListener(this);
   // You can't use setOnTouchListener() in your own code
   setOnTouchListener(mTouchListener);
   // You can use setOnScrollListener() in your own code
   setOnScrollListener(mInnerOnScrollListener);
   // You can use setOnItemClickListener() in your own code
   setOnItemClickListener(mInnerOnItemClickListener);
 }