我正在尝试将按钮点击数值与Recyclerview适配器的位置传递给活动。我没有用这两个接口做到这一点。例如;我点击按钮的第一行以获得" 2" &安培; I Log Button getNumber()是" 2"。没关系。但当我点击第二排&日志是" 2",实际上第二行按钮号是" 1"。我不知道如何通过职位获得价值。
这里是界面,
public interface OnItemClick {
void onClick(String value, int position);
}
适配器,
private OnItemClick mCallback;
public SubMenuRVAdapter(Context context, List<SubMenu> subMenuList, OnItemClick mCallback) {
this.context = context;
this.subMenuList = subMenuList;
this.mCallback = mCallback;
}
holder.button.setOnClickListener(new ElegantNumberButton.OnClickListener() { // onBindViewHolder
@Override
public void onClick(View view) {
String num = holder.button.getNumber();
mCallback.onClick(num, holder.getAdapterPosition());
}
});
活动,
public class SubMenuActivity extends AppCompatActivity implements OnItemClick {
SubMenuRVAdapter adapter = new SubMenuRVAdapter(SubMenuActivity.this, subMenus, SubMenuActivity.this);
recycler_view.setAdapter(adapter);
@Override
public void onClick(String value, int position) {
num = value;
}
}