您的位置:首页 > 其它

[置顶] RecycleView的基本配置和使用方法(三)---RecycleView中 item的事件处理

2016-12-12 13:59 555 查看

item的操作应用:

(1)item的增加和删除,主要是适配器中实现:

(1)增加:
/**
*增加Item
*/
public void addItem(int position) {
list.add(position,"A");
notifyItemInserted(position);
}
(2)删除
/**
*删除Item
*/
public void removeItem(int position) {
list.remove(position);
notifyItemRemoved(position);
}


(2)对item进行操作(以button为操作控件)

@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.addItem:
homeAdapter.addItem(1);
break;
case R.id.removeItem:
homeAdapter.removeItem(1);
break;


(3)RecyclerView中item的长按和短按的监听事件(设置接口进行回调)

public interface ItemClickListener {

/**
* Item的普通点击
*/
public void onItemClick(View view, int position);

/**
* Item长按
*/
public void onItemLongClick(View view, int position);


(4)以TextView为例实现点击和长按事件:

//为TextView添加监听回调
holder.textView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (itemClickListener != null) {
itemClickListener.onItemSubViewClick(holder.textView, position);
}
}
});


(5)点击和长按的实现方法

//为item添加普通点击回调
itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (itemClickListener != null) {
itemClickListener.onItemClick(itemView, getPosition());
}
}
});
//为item添加长按回调
itemView.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
if (itemClickListener != null) {
itemClickListener.onItemLongClick(itemView, getPosition());
}
return true;
}
});

homeAdapter.setItemClickListener(new ItemClickListener() {
@Override
public void onItemClick(View view, int position) {
Toast.makeText(MainActivity.this, "点击了Item" + position, Toast.LENGTH_SHORT).show();
}

@Override
public void onItemLongClick(View view, int position) {
Toast.makeText(MainActivity.this, "长按了Item" + position, Toast.LENGTH_SHORT).show();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐