是否可以在viewHolder中设置setCoordinate而不在其他布局中设置getCoordinate?我可以举个例子吗?这是我的viewHolder示例:
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
public class myHolder extends RecyclerView.ViewHolder implements
View.OnClickListener {
//views
ImageView mImageIv;
TextView mTitleTv, mDescrTv;
ItemClickListener itemClickListener;
myHolder(@NonNull View itemView) {
super(itemView);
this.mImageIv = itemView.findViewById(R.id.Model_ImageIv);
this.mDescrTv = itemView.findViewById(R.id.Model_DescrTv);
this.mTitleTv = itemView.findViewById(R.id.Model_TitleTv);
itemView.setOnClickListener(this);
}
@Override
public void onClick(View v) {
this.itemClickListener.onItemClick(v, getLayoutPosition());
}
public void setItemClickListener(ItemClickListener ic){
this.itemClickListener = ic;
}
}
答案 0 :(得分:0)
您可以将任何方法添加到ViewHolder。
然后您可以使用:
recyclerView.findViewHolderForAdapterPosition(position);
或
recyclerView.findContainingItemView(view);
recyclerView.findViewHolderForLayoutPosition(position);
recyclerView.findViewHolderForItemId(id);
查找ViewHolder并调用getCoordinate()
答案 1 :(得分:0)
过去,此操作是从保存完整数据集的适配器进行管理的。您可以更新所需的项目,然后调用notifyDataSetChanged()方法。