@Override
        public void onLongPress(MotionEvent e) {
            boolean isChildLongClick =false;
            if (recyclerView.getScrollState()!=RecyclerView.SCROLL_STATE_IDLE){
                return ;
            }
            if (mIsPrepressed && mPressedView != null) {
                mPressedView.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS);
                BaseViewHolder vh = (BaseViewHolder) recyclerView.getChildViewHolder(mPressedView);
                if (!isHeaderOrFooterPosition(vh.getLayoutPosition())) {
                    Set<Integer> longClickViewIds = vh.getItemChildLongClickViewIds();
                    Set<Integer> nestViewIds = vh.getNestViews();
                    if (longClickViewIds != null && longClickViewIds.size() > 0) {
                        for (Integer longClickViewId : longClickViewIds) {
                            View childView = mPressedView.findViewById(longClickViewId);
                            if (inRangeOfView(childView, e) && childView.isEnabled()) {
                                if (nestViewIds!=null&&nestViewIds.contains(longClickViewId)){
                                    isChildLongClick=true;
                                    break;
                                }
                                setPressViewHotSpot(e, childView);
                                onItemChildLongClick(baseQuickAdapter, childView, vh.getLayoutPosition() - baseQuickAdapter.getHeaderLayoutCount());
                                childView.setPressed(true);
                                mIsShowPress = true;
                                isChildLongClick = true;
                                break;
                            }
                        }
                    }
                    if (!isChildLongClick){

                        onItemLongClick(baseQuickAdapter, mPressedView, vh.getLayoutPosition() - baseQuickAdapter.getHeaderLayoutCount());
                        setPressViewHotSpot(e,mPressedView);
                        mPressedView.setPressed(true);
                        if (longClickViewIds != null) {
                            for (Integer longClickViewId : longClickViewIds) {
                                View childView = mPressedView.findViewById(longClickViewId);
                                childView.setPressed(false);
                            }
                        }
                        mIsShowPress = true;
                    }

                }

            }
        }
Created by AllenCoder on 2016/8/03.
<p>
This can be useful for applications that wish to implement various forms of click and longclick and childView click
manipulation of item views within the RecyclerView. SimpleClickListener may intercept
a touch interaction already in progress even if the SimpleClickListener is already handling that
gesture stream itself for the purposes of scrolling.

@see RecyclerView.OnItemTouchListener
common/src/main/java/com/sxjs/common/base/baseadapter/listener/SimpleClickListener.java