Android中RecycleView如何实现指定范围的拖动效果-创新互联

创新互联www.cdcxhl.cn八线动态BGP香港云服务器提供商,新人活动买多久送多久,划算不套路!

网站建设哪家好,找创新互联公司!专注于网页设计、网站建设、微信开发、微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了汝城免费建站欢迎大家使用!

小编这次要给大家分享的是Android中RecycleView如何实现指定范围的拖动效果,文章内容丰富,感兴趣的小伙伴可以来了解一下,希望大家阅读完这篇文章之后能够有所收获。

1 问题

在RecycleView里面实现指定位置的拖动效果,(这里是实现线性布局的,不是网格布局的)

 @Override
  public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
    Log.i(TAG, "onMove viewHolder.getAdapterPosition() is:" + viewHolder.getAdapterPosition());
    int itemViewType = viewHolder.getAdapterPosition();
    Log.i(TAG, "onMove---------------------------------itemViewType is:" + itemViewType);
//    if (itemViewType == 0 || itemViewType == 1 || itemViewType == 16) {
//      Log.i(TAG, "onMove---------------------------------itemViewType is:" + itemViewType);
//      return false;
//    }
    int fromPosition = viewHolder.getAdapterPosition();//得到拖动ViewHolder的position
    int toPosition = target.getAdapterPosition();//得到目标ViewHolder的position
		
    Log.i(TAG, "onMove---------------------------------fromPosition is:" + fromPosition);
    Log.i(TAG, "onMove---------------------------------toPosition is:" + toPosition);
		
		//这里的position如果不是指定范围内的话,直接返回false,就拖动不到其它位置了
    if (DragUtil.INSTANCE.getProhibitDragIndexs().contains(toPosition)) {
      return false;
    }
    itemTouchAdapter.onMove(fromPosition,toPosition);
    return true;
  }

分享标题:Android中RecycleView如何实现指定范围的拖动效果-创新互联
网站URL:http://scyanting.com/article/dehdes.html