Java Code Examples for android.support.v7.widget.helper.ItemTouchHelper

The following are top voted examples for showing how to use android.support.v7.widget.helper.ItemTouchHelper. These examples are extracted from open source projects. You can vote up the examples you like and your votes will be used in our system to generate more good examples.
Example 1
Project: WeatherPlus   File: CityListFragment.java   View source code 6 votes vote down vote up
@Override
public void onActivityCreated(Bundle state) {
    Log.d(TAG, "onActivityCreated");
    super.onActivityCreated(state);

    if (state != null) {
        isRefreshing = state.getBoolean(KEY_IS_REFRESHING);
        isAddQueueHandling = state.getBoolean(KEY_IS_ADD_QUEUE_HANDLING);

        currNameIndex = state.getInt(KEY_CURR_NAME_INDEX);

        cityWeatherList = state.getParcelableArrayList(KEY_CITY_WEATHER_LIST);

        cityAddQueue = state.getParcelableArrayList(KEY_CITY_ADD_QUEUE);

        updateRecyclerView();
    } else {
        loadCitiesFromDisk();
    }

    itemTouchCallBack = new ItemTouchHelperAdapter(ItemTouchHelper.UP | ItemTouchHelper.DOWN,
            ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT, this, cityWeatherList, true);

    new ItemTouchHelper(itemTouchCallBack).attachToRecyclerView(recyclerView);
}
 
Example 2
Project: letv   File: ChannelFragmentAdapter.java   View source code 6 votes vote down vote up
public ChannelFragmentAdapter(Context context, ItemTouchHelper helper, ChannelListBean channelListBean, RecyclerView view) {
    this.mInflater = LayoutInflater.from(context);
    this.mContext = context;
    this.mItemTouchHelper = helper;
    this.mRecyclerView = view;
    this.mChannelListBean = channelListBean;
    if (channelListBean != null && !BaseTypeUtils.isListEmpty(channelListBean.listChannel)) {
        for (int i = 0; i < channelListBean.listChannel.size(); i++) {
            if (channelListBean.listChannel.get(i) != null) {
                this.mMyChannelItems.add(channelListBean.listChannel.get(i));
                if (((Channel) channelListBean.listChannel.get(i)).top == 0) {
                    this.mTopSize++;
                }
                if (((Channel) channelListBean.listChannel.get(i)).lock == 1) {
                    this.mLockSize++;
                }
            }
        }
        this.mImageDownloader = ImageDownloader.getInstance();
    }
}
 
Example 3
Project: RLibrary   File: DefaultItemTouchHelperCallback.java   View source code 6 votes vote down vote up
@Override
public void onChildDraw(Canvas c, RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, float dX, float dY, int actionState, boolean isCurrentlyActive) {
    //判断当前是否是swipe方式:侧滑。
    if (actionState == ItemTouchHelper.ACTION_STATE_SWIPE) {
        //1.ItemView--ViewHolder; 2.侧滑条目的透明度程度关联谁?dX(delta增量,范围:当前条目-width~width)。
        RecyclerView.LayoutManager layoutManager = recyclerView.getLayoutManager();
        float alpha = 1;
        if (layoutManager instanceof LinearLayoutManager) {
            int orientation = ((LinearLayoutManager) layoutManager).getOrientation();
            if (orientation == LinearLayoutManager.HORIZONTAL) {
                alpha = 1 - Math.abs(dY) / viewHolder.itemView.getHeight();
            } else if (orientation == LinearLayoutManager.VERTICAL) {
                alpha = 1 - Math.abs(dX) / viewHolder.itemView.getWidth();
            }
        }
        viewHolder.itemView.setAlpha(alpha);//1~0
    }
    super.onChildDraw(c, recyclerView, viewHolder, dX, dY, actionState, isCurrentlyActive);
}
 
Example 4
Project: JD-Test   File: ItemDragAndSwipeCallback.java   View source code 6 votes vote down vote up
@Override
public void onChildDrawOver(Canvas c, RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder,
                            float dX, float dY, int actionState, boolean isCurrentlyActive) {
    super.onChildDrawOver(c, recyclerView, viewHolder, dX, dY, actionState, isCurrentlyActive);

    if (actionState == ItemTouchHelper.ACTION_STATE_SWIPE
            && !isViewCreateByAdapter(viewHolder)) {
        View itemView = viewHolder.itemView;

        c.save();
        if (dX > 0) {
            c.clipRect(itemView.getLeft(), itemView.getTop(),
                    itemView.getLeft() + dX, itemView.getBottom());
            c.translate(itemView.getLeft(), itemView.getTop());
        } else {
            c.clipRect(itemView.getRight() + dX, itemView.getTop(),
                    itemView.getRight(), itemView.getBottom());
            c.translate(itemView.getRight() + dX, itemView.getTop());
        }

        mAdapter.onItemSwiping(c, viewHolder, dX, dY, isCurrentlyActive);
        c.restore();

    }
}
 
Example 5
Project: GitHub   File: ItemDragAndSwipeCallback.java   View source code 6 votes vote down vote up
@Override
public void onChildDrawOver(Canvas c, RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder,
                            float dX, float dY, int actionState, boolean isCurrentlyActive) {
    super.onChildDrawOver(c, recyclerView, viewHolder, dX, dY, actionState, isCurrentlyActive);

    if (actionState == ItemTouchHelper.ACTION_STATE_SWIPE
            && !isViewCreateByAdapter(viewHolder)) {
        View itemView = viewHolder.itemView;

        c.save();
        if (dX > 0) {
            c.clipRect(itemView.getLeft(), itemView.getTop(),
                    itemView.getLeft() + dX, itemView.getBottom());
            c.translate(itemView.getLeft(), itemView.getTop());
        } else {
            c.clipRect(itemView.getRight() + dX, itemView.getTop(),
                    itemView.getRight(), itemView.getBottom());
            c.translate(itemView.getRight() + dX, itemView.getTop());
        }

        mAdapter.onItemSwiping(c, viewHolder, dX, dY, isCurrentlyActive);
        c.restore();

    }
}
 
Example 6
Project: letv   File: FirstPageCustomAdapter.java   View source code 6 votes vote down vote up
public FirstPageCustomAdapter(Context context, ItemTouchHelper helper, List<HomeBlock> list, TextView view, RecyclerView recyclerView) {
    this.mInflater = LayoutInflater.from(context);
    if (!BaseTypeUtils.isListEmpty(list)) {
        for (HomeBlock block : list) {
            if (block != null) {
                if (TextUtils.equals(block.isLock, "1")) {
                    this.mList.add(this.mLockSize, block);
                    this.mLockSize++;
                } else {
                    this.mList.add(block);
                }
            }
        }
        this.mItemTouchHelper = helper;
        this.mContext = context;
        if (this.mLockSize == 0) {
            this.mHeadSize = 1;
        } else {
            this.mHeadSize = 2;
        }
        this.mSaveView = view;
        this.mRecyclerView = recyclerView;
    }
}
 
Example 7
Project: MyCalendar   File: LocationListActivity.java   View source code 6 votes vote down vote up
private void initView() {
    ActionBar actionBar = getSupportActionBar();
    if (actionBar != null) {
        actionBar.setDisplayHomeAsUpEnabled(true);
        actionBar.setBackgroundDrawable(new ColorDrawable(ContextCompat.getColor(mContext, R.color.color_Actionbar)));
    }
    mCoordinatorLayout = findViewById(R.id.coordinator);

    RecyclerView recyclerView = findViewById(R.id.recycle_view);
    recyclerView.setLayoutManager(new LinearLayoutManager(this));
    mAdapter = new LocationAdapter(this, new ArrayList<Location>());
    @SuppressWarnings("unchecked") SwingBottomInAnimationAdapter animatorAdapter = new SwingBottomInAnimationAdapter(mAdapter, recyclerView);
    recyclerView.setAdapter(animatorAdapter);

    ItemTouchHelper.Callback callback = new ItemTouchHelperCallBackNoMove(mAdapter);
    ItemTouchHelper touchHelper = new ItemTouchHelper(callback);
    touchHelper.attachToRecyclerView(recyclerView);

    mView_FABMenu = findViewById(R.id.fab_menu_1);
    FloatingActionButton addLocation = findViewById(R.id.fab_action_1);
    addLocation.setVisibility(View.VISIBLE);
    addLocation.setLabelText(mContext.getResources().getString(R.string.add_location));
    addLocation.setOnClickListener(this);
}
 
Example 8
Project: GitHub   File: MyItemTouchHelperCallback.java   View source code 6 votes vote down vote up
@Override
    public int getMovementFlags(RecyclerView recyclerView, RecyclerView.ViewHolder holder) {
        //方向:up,down,left,right
        //常量:
        int up = ItemTouchHelper.UP;//1  0x0001
        int down = ItemTouchHelper.DOWN;//2 0x0010
//		ItemTouchHelper.LEFT
//		ItemTouchHelper.RIGHT
        //我要监听的拖拽方向是哪两个方向。
        int dragFlags = ItemTouchHelper.UP | ItemTouchHelper.DOWN|ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT;
        //我要监听的swipe侧滑方向是哪个方向
//		int swipeFlags = 0;
        int swipeFlags = ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT;


        int flags = makeMovementFlags(dragFlags, swipeFlags);
        return flags;
    }
 
Example 9
Project: Hands-On-Android-UI-Development   File: OverviewActivity.java   View source code 6 votes vote down vote up
@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_overview);

    setSupportActionBar((Toolbar) findViewById(R.id.toolbar));

    final RecyclerView claimItems = findViewById(R.id.claim_items);
    claimItems.setAdapter(new ClaimItemAdapter(
            this, this,
            ClaimApplication.getClaimDatabase().claimItemDao().selectAll()
    ));

    new ItemTouchHelper(new SwipeToDeleteCallback())
            .attachToRecyclerView(claimItems);
}
 
Example 10
Project: GitHub   File: MyItemTouchHelperCallback.java   View source code 6 votes vote down vote up
@Override
public void onChildDraw(Canvas c, RecyclerView recyclerView,
                        RecyclerView.ViewHolder viewHolder, float dX, float dY, int actionState,
                        boolean isCurrentlyActive) {
    //dX:水平方向移动的增量(负:往左;正:往右)范围:0~View.getWidth  0~1
    if (actionState == ItemTouchHelper.ACTION_STATE_SWIPE) {
        //透明度动画
        float alpha = 1 - Math.abs(dX) / viewHolder.itemView.getWidth();
        viewHolder.itemView.setAlpha(alpha);//1~0
        viewHolder.itemView.setScaleX(alpha);//1~0
        viewHolder.itemView.setScaleY(alpha);//1~0
    }


    super.onChildDraw(c, recyclerView, viewHolder, dX, dY, actionState,
            isCurrentlyActive);
}
 
Example 11
Project: OpenHub   File: TraceFragment.java   View source code 6 votes vote down vote up
@Override
    protected void initFragment(Bundle savedInstanceState) {
        super.initFragment(savedInstanceState);
        setLoadMoreEnable(true);
        ItemTouchHelperCallback callback = new ItemTouchHelperCallback(0,
                ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT, this);
        itemTouchHelper = new ItemTouchHelper(callback);
        itemTouchHelper.attachToRecyclerView(recyclerView);
        StickyRecyclerHeadersDecoration headersDecor = new StickyRecyclerHeadersDecoration(adapter);
        recyclerView.addItemDecoration(headersDecor);

        StickyRecyclerHeadersTouchListener touchListener =
                new StickyRecyclerHeadersTouchListener(recyclerView, headersDecor);
        touchListener.setOnHeaderClickListener((header, position, headerId) -> {
            //wrong position returned
//            recyclerView.smoothScrollToPosition(mPresenter.getFirstItemByDate((Long) header.getTag()));
        });
        recyclerView.addOnItemTouchListener(touchListener);

    }
 
Example 12
Project: GitHub   File: ItemDragAndSwipeCallback.java   View source code 6 votes vote down vote up
@Override
public void onChildDrawOver(Canvas c, RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder,
                            float dX, float dY, int actionState, boolean isCurrentlyActive) {
    super.onChildDrawOver(c, recyclerView, viewHolder, dX, dY, actionState, isCurrentlyActive);

    if (actionState == ItemTouchHelper.ACTION_STATE_SWIPE
            && !isViewCreateByAdapter(viewHolder)) {
        View itemView = viewHolder.itemView;

        c.save();
        if (dX > 0) {
            c.clipRect(itemView.getLeft(), itemView.getTop(),
                    itemView.getLeft() + dX, itemView.getBottom());
            c.translate(itemView.getLeft(), itemView.getTop());
        } else {
            c.clipRect(itemView.getRight() + dX, itemView.getTop(),
                    itemView.getRight(), itemView.getBottom());
            c.translate(itemView.getRight() + dX, itemView.getTop());
        }

        mAdapter.onItemSwiping(c, viewHolder, dX, dY, isCurrentlyActive);
        c.restore();

    }
}
 
Example 13
Project: DynamicTab   File: MainActivity.java   View source code 6 votes vote down vote up
private void initView() {
    mRecyclerSrc = (RecyclerView) findViewById(R.id.teach_src);
    mRecyclerDst = (RecyclerView) findViewById(R.id.teach_dst);
    GridLayoutManager layoutManagerSrc = new GridLayoutManager(this, 4);
    GridLayoutManager layoutManagerDst = new GridLayoutManager(this, 4);
    mRecyclerSrc.setLayoutManager(layoutManagerSrc);
    mRecyclerDst.setLayoutManager(layoutManagerDst);
    TeachAdapter srcAdapter = new TeachAdapter(this, getDataSrc());
    mRecyclerSrc.setAdapter(srcAdapter);
    srcAdapter.setListener(this);
    TeachAdapter detAdapter = new TeachAdapter(this, getDataDst());
    mRecyclerDst.setAdapter(detAdapter);
    detAdapter.setListener(this);

    ItemTouchHelper itemTouchHelper = new ItemTouchHelper(new ItemTouchCallback(srcAdapter));
    itemTouchHelper.attachToRecyclerView(mRecyclerSrc);
}
 
Example 14
Project: GitHub   File: ItemTouchHelperCallback.java   View source code 6 votes vote down vote up
/**
 * {@inheritDoc}
 */
@Override
public int getMovementFlags(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) {
	RecyclerView.LayoutManager layoutManager = recyclerView.getLayoutManager();
	int dragFlags;
	int swipeFlags;
	//Set movement flags based on the Layout Manager and Orientation
	if (layoutManager instanceof GridLayoutManager || layoutManager instanceof StaggeredGridLayoutManager) {
		dragFlags = ItemTouchHelper.UP | ItemTouchHelper.DOWN | ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT;
		swipeFlags = 0;
	} else if (Utils.getOrientation(layoutManager) == LinearLayoutManager.VERTICAL) {
		dragFlags = ItemTouchHelper.UP | ItemTouchHelper.DOWN;
		swipeFlags = mSwipeFlags > 0 ? mSwipeFlags : ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT;
	} else {
		dragFlags = ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT;
		swipeFlags = mSwipeFlags > 0 ? mSwipeFlags : ItemTouchHelper.UP | ItemTouchHelper.DOWN;
	}
	//Disallow item swiping or dragging
	if (viewHolder instanceof ViewHolderCallback) {
		ViewHolderCallback viewHolderCallback = (ViewHolderCallback) viewHolder;
		if (!viewHolderCallback.isDraggable()) dragFlags = 0;
		if (!viewHolderCallback.isSwipeable()) swipeFlags = 0;
	}
	return makeMovementFlags(dragFlags, swipeFlags);
}
 
Example 15
Project: GitHub   File: FlexibleViewHolder.java   View source code 6 votes vote down vote up
/**
 * {@inheritDoc}
 *
 * @see #toggleActivation()
 * @since 5.0.0-b1
 */
@Override
@CallSuper
public void onClick(View view) {
	int position = getFlexibleAdapterPosition();
	if (!mAdapter.isEnabled(position)) return;
	// Experimented that, if LongClick is not consumed, onClick is fired. We skip the
	// call to the listener in this case, which is allowed only in ACTION_STATE_IDLE.
	if (mAdapter.mItemClickListener != null && mActionState == ItemTouchHelper.ACTION_STATE_IDLE) {
		if (FlexibleAdapter.DEBUG)
			Log.v(TAG, "onClick on position " + position + " mode=" + mAdapter.getMode());
		// Get the permission to activate the View from user
		if (mAdapter.mItemClickListener.onItemClick(position)) {
			// Now toggle the activation
			toggleActivation();
		}
	}
}
 
Example 16
Project: JSSample   File: SRecyclerView.java   View source code 6 votes vote down vote up
/**
 * 设置移动方向 模式
 *
 * @param recyclerView
 * @param viewHolder
 * @return
 */
@Override
public int getMovementFlags(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) {
    int dragflag = 0;
    int swipeflag = 0;
    if (recyclerView.getLayoutManager() instanceof GridLayoutManager) {
        if (canswitch)
            dragflag = ItemTouchHelper.UP |
                    ItemTouchHelper.DOWN |
                    ItemTouchHelper.LEFT |
                    ItemTouchHelper.RIGHT;
        if (canswipe)
            swipeflag = ItemTouchHelper.END;
    } else {
        if (canswitch)
            dragflag = ItemTouchHelper.UP |
                    ItemTouchHelper.DOWN;
        if (canswipe)
            swipeflag = ItemTouchHelper.END;
    }
    return makeMovementFlags(dragflag, swipeflag);
}
 
Example 17
Project: Hands-On-Android-UI-Development   File: OverviewActivity.java   View source code 6 votes vote down vote up
@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_overview);

    setSupportActionBar((Toolbar) findViewById(R.id.toolbar));

    final RecyclerView claimItems = findViewById(R.id.claim_items);
    claimItems.setAdapter(new ClaimItemAdapter(
            this, this,
            ClaimApplication.getClaimDatabase().claimItemDao().selectAll()
    ));

    new ItemTouchHelper(new SwipeToDeleteCallback())
            .attachToRecyclerView(claimItems);
}
 
Example 18
Project: UiLib   File: DefaultItemTouchHelperCallback.java   View source code 6 votes vote down vote up
@Override
public void onChildDraw(Canvas c, RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, float dX, float dY, int
        actionState, boolean isCurrentlyActive) {
    //判断当前是否是swipe方式:侧滑。
    if (actionState == ItemTouchHelper.ACTION_STATE_SWIPE) {
        //1.ItemView--ViewHolder; 2.侧滑条目的透明度程度关联谁?dX(delta增量,范围:当前条目-width~width)。
        RecyclerView.LayoutManager layoutManager = recyclerView.getLayoutManager();
        float alpha = 1;
        if (layoutManager instanceof LinearLayoutManager) {
            int orientation = ((LinearLayoutManager) layoutManager).getOrientation();
            if (orientation == LinearLayoutManager.HORIZONTAL) {
                alpha = 1 - Math.abs(dY) / viewHolder.itemView.getHeight();
            } else if (orientation == LinearLayoutManager.VERTICAL) {
                alpha = 1 - Math.abs(dX) / viewHolder.itemView.getWidth();
            }
        }
        viewHolder.itemView.setAlpha(alpha);//1~0
    }
    super.onChildDraw(c, recyclerView, viewHolder, dX, dY, actionState, isCurrentlyActive);
}
 
Example 19
Project: GoogleVR   File: ItemDragAndSwipeCallback.java   View source code 6 votes vote down vote up
@Override
public void onChildDrawOver(Canvas c, RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, float dX, float dY, int actionState, boolean isCurrentlyActive) {
    super.onChildDrawOver(c, recyclerView, viewHolder, dX, dY, actionState, isCurrentlyActive);

    if (actionState == ItemTouchHelper.ACTION_STATE_SWIPE) {
        View itemView = viewHolder.itemView;

        c.save();
        if (dX > 0) {
            c.clipRect(itemView.getLeft(), itemView.getTop(), itemView.getLeft() + dX, itemView.getBottom());
            c.translate(itemView.getLeft(), itemView.getTop());
        } else {
            c.clipRect(itemView.getRight() + dX, itemView.getTop(), itemView.getRight(), itemView.getBottom());
            c.translate(itemView.getRight() + dX, itemView.getTop());
        }

        mAdapter.onItemSwiping(c, viewHolder, dX, dY, isCurrentlyActive);
        c.restore();

    }
}
 
Example 20
Project: Android-Code-Demos   File: LinearActivity.java   View source code 6 votes vote down vote up
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_linear);

    List<String> list = new ArrayList<>();
    for (int i = 1; i <= 20; i++) {
        list.add("Hello, I am " + i);
    }
    Adapter adapter = new Adapter(this, this);
    adapter.addAll(list);
    RecyclerView recyclerView = (RecyclerView) findViewById(R.id.linear_recycler_view);
    recyclerView.setHasFixedSize(true);
    recyclerView.setAdapter(adapter);
    recyclerView.setLayoutManager(new LinearLayoutManager(this));

    ItemTouchHelper.Callback callback = new ItemTouchHelperCallBack(adapter);
    mItemTouchHelper = new ItemTouchHelper(callback);
    mItemTouchHelper.attachToRecyclerView(recyclerView);
}
 
Example 21
Project: ImitateZHRB   File: SimpleItemTouchHelperCallback.java   View source code 5 votes vote down vote up
@Override
public void onChildDraw(Canvas c, RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, float dX, float dY, int actionState, boolean isCurrentlyActive) {
    super.onChildDraw(c, recyclerView, viewHolder, dX, dY, actionState, isCurrentlyActive);

    // Fade out the view as it is swiped out of the parent's bounds
    if (actionState == ItemTouchHelper.ACTION_STATE_SWIPE) {
        View itemView = viewHolder.itemView;
        final float alpha = ALPHA_FULL - Math.abs(dX) / (float) itemView.getWidth();
        itemView.setAlpha(alpha);
    }
}
 
Example 22
Project: AvatarTinderView   File: SimpleItemTouchHelperCallback.java   View source code 5 votes vote down vote up
@Override
public void onChildDraw(Canvas c, RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, float dX, float dY, int actionState, boolean isCurrentlyActive) {
    if (actionState == ItemTouchHelper.ACTION_STATE_SWIPE) {
        // Fade out the view as it is swiped out of the parent's bounds
        final float alpha = ALPHA_FULL - Math.abs(dX) / (float) viewHolder.itemView.getWidth();
        viewHolder.itemView.setAlpha(alpha);
        viewHolder.itemView.setTranslationX(dX);
    } else {
        super.onChildDraw(c, recyclerView, viewHolder, dX, dY, actionState, isCurrentlyActive);
    }
}
 
Example 23
Project: ucar-weex-core   File: DragSupportCallback.java   View source code 5 votes vote down vote up
@Override
public void onSelectedChanged(RecyclerView.ViewHolder viewHolder, int actionState) {
    if (actionState != ItemTouchHelper.ACTION_STATE_IDLE && viewHolder instanceof ListBaseViewHolder) {
        ListBaseViewHolder vh = (ListBaseViewHolder) viewHolder;
        if (vh.getComponent() != null) {
            mDragHelper.onDragStart(vh.getComponent(), vh.getAdapterPosition());
        }
    }

    super.onSelectedChanged(viewHolder, actionState);
}
 
Example 24
Project: Android-Open-Shopping-List   File: ItemTouchHelperCallback.java   View source code 5 votes vote down vote up
@Override
public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) {
    ShoppingListAdapter.ViewHolder vh = (ShoppingListAdapter.ViewHolder) viewHolder;

    vh.isSwiped = true;

    if (direction == ItemTouchHelper.START) {
        listener.onSwipeLeft(vh);
    } else if (direction == ItemTouchHelper.END) {
        listener.onSwipeRight(vh);
    }
}
 
Example 25
Project: MyCalendar   File: WeekLessonDetailActivity.java   View source code 5 votes vote down vote up
private void initView() {
    ActionBar actionBar = getSupportActionBar();
    if (actionBar != null) {
        actionBar.setDisplayHomeAsUpEnabled(true);
        actionBar.setBackgroundDrawable(new ColorDrawable(ContextCompat.getColor(mContext, R.color.color_Actionbar)));
    }

    mView_Coordinator = findViewById(R.id.coordinator);
    mView_SubjectName = findViewById(R.id.week_lesson_detail_subject_name);
    mView_SubjectArrow = findViewById(R.id.arrow);
    mView_Weekday = findViewById(R.id.week_lesson_detail_weekday);
    mView_Repeat = findViewById(R.id.week_lesson_detail_repeat);
    mView_Day = findViewById(R.id.week_lesson_detail_day);
    mView_FABMenu = findViewById(R.id.fab_menu_1);
    FloatingActionButton addDayLesson = findViewById(R.id.fab_action_1);
    FloatingActionButton editWeekLesson = findViewById(R.id.fab_action_2);
    addDayLesson.setVisibility(View.VISIBLE);
    editWeekLesson.setVisibility(View.VISIBLE);
    addDayLesson.setLabelText(mResources.getString(R.string.add_day_lesson));
    editWeekLesson.setLabelText(mResources.getString(R.string.edit_week_lesson));
    editWeekLesson.setImageResource(R.drawable.ic_edit_white_24dp);

    RecyclerView mView_RecyclerView = findViewById(R.id.recycle_view);
    mView_RecyclerView.setNestedScrollingEnabled(false);
    mView_RecyclerView.setLayoutManager(new LinearLayoutManager(this));
    mAdapter = new DayLessonAdapter(mContext, new ArrayList<DayLesson>(), mColorText, mColorBackground);
    @SuppressWarnings("unchecked") SwingBottomInAnimationAdapter animatorAdapter = new SwingBottomInAnimationAdapter(mAdapter, mView_RecyclerView);
    mView_RecyclerView.setAdapter(animatorAdapter);

    ItemTouchHelper.Callback callback = new ItemTouchHelperCallBackNoMove(mAdapter);
    ItemTouchHelper touchHelper = new ItemTouchHelper(callback);
    touchHelper.attachToRecyclerView(mView_RecyclerView);

    registerForContextMenu(mView_SubjectArrow);
    mView_SubjectArrow.setOnClickListener(this);
    mView_SubjectName.setOnClickListener(this);
    addDayLesson.setOnClickListener(this);
    editWeekLesson.setOnClickListener(this);
    setUpInfo();
}
 
Example 26
Project: OddLauncher   File: RecyclerItemSwiper.java   View source code 5 votes vote down vote up
public RecyclerItemSwiper(int dragDirs, int swipeDirs, Context context,
                          AppAdapter adapter, List<AppInfo> list, DatabaseHelper db, String tag, RecyclerView recyclerView) {
    super(dragDirs, swipeDirs);
    this.context = context;
    this.adapter = adapter;
    this.list = list;
    this.db = db;
    this.tag = tag;
    itemTouchHelper = new ItemTouchHelper(RecyclerItemSwiper.this);
    itemTouchHelper.attachToRecyclerView(recyclerView);
}
 
Example 27
Project: EasyTodo   File: SimpleItemTouchHelperCallback.java   View source code 5 votes vote down vote up
@Override
public void onSelectedChanged(RecyclerView.ViewHolder viewHolder, int actionState) {
    // We only want the active item to change
    if (actionState != ItemTouchHelper.ACTION_STATE_IDLE) {
        if (viewHolder instanceof ItemTouchHelperViewHolder) {
            // Let the view holder know that this item is being moved or dragged
            ItemTouchHelperViewHolder itemViewHolder = (ItemTouchHelperViewHolder) viewHolder;
            itemViewHolder.onItemSelected();
        }
    }

    super.onSelectedChanged(viewHolder, actionState);
}
 
Example 28
Project: decoy   File: ItemDragAndSwipeCallback.java   View source code 5 votes vote down vote up
@Override
public void onSelectedChanged(RecyclerView.ViewHolder viewHolder, int actionState) {
    if (actionState == ItemTouchHelper.ACTION_STATE_DRAG
            && !isViewCreateByAdapter(viewHolder)) {
        mAdapter.onItemDragStart(viewHolder);
        viewHolder.itemView.setTag(R.id.BaseQuickAdapter_dragging_support, true);
    } else if (actionState == ItemTouchHelper.ACTION_STATE_SWIPE
            && !isViewCreateByAdapter(viewHolder)) {
        mAdapter.onItemSwipeStart(viewHolder);
        viewHolder.itemView.setTag(R.id.BaseQuickAdapter_swiping_support, true);
    }
    super.onSelectedChanged(viewHolder, actionState);
}
 
Example 29
Project: MaterialDesignDemo   File: MyItemTouchHelperCallback.java   View source code 5 votes vote down vote up
/**
 * 当item被拖拽或侧滑时触发
 *
 * @param viewHolder
 * @param actionState 当前item的状态
 */
@Override
public void onSelectedChanged(RecyclerView.ViewHolder viewHolder, int actionState) {
    super.onSelectedChanged(viewHolder, actionState);
    //不管是拖拽或是侧滑,背景色都要变化
    if (actionState != ItemTouchHelper.ACTION_STATE_IDLE)
        viewHolder.itemView.setBackgroundColor(viewHolder.itemView.getContext().getResources().getColor(android.R.color.darker_gray));
}
 
Example 30
Project: GitHub   File: SimpleItemTouchHelperCallback.java   View source code 5 votes vote down vote up
@Override
public int getMovementFlags(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) {
    // Set movement flags based on the layout manager
    int dragFlags;
    int swipeFlags;
    if (recyclerView.getLayoutManager() instanceof GridLayoutManager ||
            recyclerView.getLayoutManager() instanceof StaggeredGridLayoutManager) {
        if (mDragFlags != 0) {
            dragFlags = mDragFlags;
        } else {
            dragFlags = ItemTouchHelper.UP | ItemTouchHelper.DOWN | ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT;
        }
        if (mSwipeFlags != 0) {
            swipeFlags = mSwipeFlags;
        } else {
            swipeFlags = ItemTouchHelper.START;
        }
    } else {
        if (mDragFlags != 0) {
            dragFlags = mDragFlags;
        } else {
            dragFlags = ItemTouchHelper.UP | ItemTouchHelper.DOWN;
        }
        if (mSwipeFlags != 0) {
            swipeFlags = mSwipeFlags;
        } else {
            swipeFlags = ItemTouchHelper.START | ItemTouchHelper.END;
        }
    }
    return makeMovementFlags(dragFlags, swipeFlags);
}
 
Example 31
Project: OSchina_resources_android   File: TweetPicturesPreviewerItemTouchCallback.java   View source code 5 votes vote down vote up
@Override
public void onSelectedChanged(RecyclerView.ViewHolder viewHolder, int actionState) {
    // We only want the active item to change
    if (actionState != ItemTouchHelper.ACTION_STATE_IDLE) {
        if (viewHolder instanceof ItemTouchHelperViewHolder) {
            // Let the view holder know that this item is being moved or dragged
            ItemTouchHelperViewHolder itemViewHolder = (ItemTouchHelperViewHolder) viewHolder;
            itemViewHolder.onItemSelected();
        }
    }

    super.onSelectedChanged(viewHolder, actionState);
}
 
Example 32
Project: GitHub   File: SimpleItemTouchHelperCallback.java   View source code 5 votes vote down vote up
@Override
public void onSelectedChanged(RecyclerView.ViewHolder viewHolder, int actionState) {
    // We only want the active item to change
    if (actionState != ItemTouchHelper.ACTION_STATE_IDLE) {
        if (viewHolder instanceof ItemTouchHelperViewHolder) {
            // Let the view holder know that this item is being moved or dragged
            ItemTouchHelperViewHolder itemViewHolder = (ItemTouchHelperViewHolder) viewHolder;
            itemViewHolder.onItemSelected();
        }
    }

    super.onSelectedChanged(viewHolder, actionState);
}
 
Example 33
Project: GitHub   File: RecyclerViewHelper.java   View source code 5 votes vote down vote up
/**
 * 启动拖拽和滑动
 * @param view 视图
 * @param adapter 适配器
 */
public static void startDragAndSwipe(RecyclerView view, BaseQuickAdapter adapter) {
    SimpleItemTouchHelperCallback callback = new SimpleItemTouchHelperCallback(adapter);
    final ItemTouchHelper itemTouchHelper = new ItemTouchHelper(callback);
    itemTouchHelper.attachToRecyclerView(view);
    adapter.setDragStartListener(new OnStartDragListener() {
        @Override
        public void onStartDrag(RecyclerView.ViewHolder viewHolder) {
            itemTouchHelper.startDrag(viewHolder);
        }
    });
    adapter.setDragCallback(callback);
    adapter.setDragColor(Color.LTGRAY);
}
 
Example 34
Project: text_converter   File: StylistFragment.java   View source code 5 votes vote down vote up
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    mGenerator = new StylistGenerator(getContext());

    mInput = view.findViewById(R.id.edit_input);


    mAdapter = new StyleAdapter(getActivity(), R.layout.list_item_style);
    mAdapter.setOnSwapStyleListener(new OnSwapStyleListener() {
        @Override
        public void onSwap(int fromPosition, int toPosition) {
            mGenerator.swapPosition(fromPosition, toPosition);
        }
    });

    mListResult = view.findViewById(R.id.recycler_view);
    mListResult.setLayoutManager(new LinearLayoutManager(getContext()));
    mListResult.setHasFixedSize(true);
    mListResult.setAdapter(mAdapter);
    mListResult.addItemDecoration(new DividerItemDecoration(getContext(), DividerItemDecoration.VERTICAL));

    ItemTouchHelperCallback callback = new ItemTouchHelperCallback(mAdapter);
    ItemTouchHelper helper = new ItemTouchHelper(callback);
    helper.attachToRecyclerView(mListResult);

    mInput.addTextChangedListener(this);

    restore();
}
 
Example 35
Project: GitHub   File: SimpleItemTouchCallback.java   View source code 5 votes vote down vote up
/**
 * 状态改变时回调
 */
@Override
public void onSelectedChanged(RecyclerView.ViewHolder viewHolder, int actionState) {
    super.onSelectedChanged(viewHolder, actionState);
    Log.i("Callback", actionState + "");
    if(actionState != ItemTouchHelper.ACTION_STATE_IDLE){
        NormalAdapter.VH holder = (NormalAdapter.VH)viewHolder;
        holder.itemView.setBackgroundColor(0xffbcbcbc);
    }
}
 
Example 36
Project: Fairy   File: MyItemTouchCallback.java   View source code 5 votes vote down vote up
@Override
public void onChildDraw(Canvas c, RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, float dX, float dY, int actionState, boolean isCurrentlyActive) {
    if (actionState == ItemTouchHelper.ACTION_STATE_SWIPE) {
        //滑动时改变 Item 的透明度,以实现滑动过程中实现渐变效果
        final float alpha = 1 - Math.abs(dX) / (float) viewHolder.itemView.getWidth();
        viewHolder.itemView.setAlpha(alpha);
        viewHolder.itemView.setTranslationX(dX);
    } else {
        super.onChildDraw(c, recyclerView, viewHolder, dX, dY, actionState, isCurrentlyActive);
    }
}
 
Example 37
Project: RetroMusicPlayer   File: SwipeAndDragHelper.java   View source code 5 votes vote down vote up
@Override
public void onChildDraw(Canvas c,
                        RecyclerView recyclerView,
                        RecyclerView.ViewHolder viewHolder,
                        float dX,
                        float dY,
                        int actionState,
                        boolean isCurrentlyActive) {
    if (actionState == ItemTouchHelper.ACTION_STATE_SWIPE) {
        float alpha = 1 - (Math.abs(dX) / recyclerView.getWidth());
        viewHolder.itemView.setAlpha(alpha);
    }
    super.onChildDraw(c, recyclerView, viewHolder, dX, dY, actionState, isCurrentlyActive);
}
 
Example 38
Project: Rey-MusicPlayer   File: SimpleItemTouchHelperCallback.java   View source code 5 votes vote down vote up
@Override
public void onSelectedChanged(RecyclerView.ViewHolder viewHolder, int actionState) {
    // We only want the active item to change
    if (actionState != ItemTouchHelper.ACTION_STATE_IDLE) {
        if (viewHolder instanceof ItemTouchHelperViewHolder) {
            ItemTouchHelperViewHolder itemViewHolder = (ItemTouchHelperViewHolder) viewHolder;
            itemViewHolder.onItemSelected();
        }
    }
    super.onSelectedChanged(viewHolder, actionState);
}
 
Example 39
Project: MusicX-music-player   File: TabRemoveFragment.java   View source code 5 votes vote down vote up
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
    View view = LayoutInflater.from(getActivity()).inflate(R.layout.playlist_picker, new LinearLayout(getActivity()), false);
    rv = (RecyclerView) view.findViewById(R.id.rv);
    btn = (Button) view.findViewById(R.id.create_playlist);
    btn.setVisibility(View.GONE);
    MaterialDialog.Builder builder = new MaterialDialog.Builder(getActivity());
    CustomLayoutManager customlayoutmanager = new CustomLayoutManager(getActivity());
    customlayoutmanager.setOrientation(LinearLayoutManager.VERTICAL);
    customlayoutmanager.setSmoothScrollbarEnabled(true);
    rv.setLayoutManager(customlayoutmanager);
    tabAdapter = new RemoveTabAdapter(getActivity(), this);
    ItemTouchHelper.Callback callback = new SimpleItemTouchHelperCallback(tabAdapter);
    mItemTouchHelper = new ItemTouchHelper(callback);
    mItemTouchHelper.attachToRecyclerView(rv);
    List<String> data = new ArrayList<String>();
    data.add("1. Recent");
    data.add("2. Folder");
    data.add("3. Song");
    data.add("4. Album");
    data.add("5. Artist");
    data.add("6.Playlist");
    tabAdapter.addDataList(data);
    rv.setAdapter(tabAdapter);
    builder.title("Tab Remove")
            .autoDismiss(true)
            .positiveText(R.string.okay)
            .onPositive(new MaterialDialog.SingleButtonCallback() {
                @Override
                public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
                    dialog.dismiss();
                }
            })
            .customView(view, false);
    return builder.show();
}
 
Example 40
Project: OpenHub   File: BookmarksFragment.java   View source code 5 votes vote down vote up
@Override
protected void initFragment(Bundle savedInstanceState) {
    super.initFragment(savedInstanceState);
    setLoadMoreEnable(true);
    ItemTouchHelperCallback callback = new ItemTouchHelperCallback(0,
            ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT, this);
    itemTouchHelper = new ItemTouchHelper(callback);
    itemTouchHelper.attachToRecyclerView(recyclerView);
}