Skip to content

Commit

Permalink
add 自动设置 setByRecyclerView() 增加事件不需要额外set;
Browse files Browse the repository at this point in the history
  • Loading branch information
youlookwhat committed Dec 25, 2019
1 parent 85965dc commit b128992
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ protected BaseByRecyclerViewAdapter(List<T> data) {

@Override
public void onBindViewHolder(@NonNull K holder, final int position) {
holder.setByRecyclerView(mRecyclerView);
holder.onBaseBindView(holder, mData.get(position), position);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -403,6 +403,7 @@ public BaseByViewHolder addOnClickListener(@IdRes final int viewId) {
view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
checkByRecyclerView();
if (byRecyclerView.getOnItemChildClickListener() != null) {
byRecyclerView.getOnItemChildClickListener().onItemChildClick(v, getClickPosition());
}
Expand All @@ -429,6 +430,7 @@ public BaseByViewHolder addOnLongClickListener(@IdRes final int viewId) {
view.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
checkByRecyclerView();
return byRecyclerView.getOnItemChildLongClickListener() != null &&
byRecyclerView.getOnItemChildLongClickListener().onItemChildLongClick(v, getClickPosition());
}
Expand All @@ -451,4 +453,10 @@ public BaseByViewHolder setByRecyclerView(ByRecyclerView byRecyclerView) {
this.byRecyclerView = byRecyclerView;
return this;
}

private void checkByRecyclerView() {
if (byRecyclerView == null) {
throw new IllegalStateException("byRecyclerView is null! Please use setByRecyclerView() bind!");
}
}
}

0 comments on commit b128992

Please sign in to comment.