我有ActivityGame一个TextView包含面数的。同样,Activity我有一个RecyclerView并且那个RecyclerView当然包含多个项目。这些项目有不同的标准编号。
例如,Par number inActivityGame是 3,现在在RecyclerViewitems 中,假设我有 1 个 par number 为 3 的项目,第二个有 2,第三个有 4。
如果一个项目的标准编号与 的标准编号相同ActivityGame,那么该项目的标准编号背景应该变成灰色。如果项目的标准件数大于 中的标准件数ActivityGame,则项目的标准件数背景应变为紫色。最后,如果它小于ActivityGamepar number,则该项目的 par number 背景应该变为蓝色。
这是我试图在适配器中做的事情,以使其工作:
@Override
public void onBindViewHolder(@NonNull GameViewHolder holder, int position) {
holder.mTextPar.setText(currentItem.getText2());
/** If persons par number is smaller than course par number, then change persons par number background to blue **/
if (Integer.parseInt(holder.mTextPar.getText().toString()) < Integer.parseInt(ActivityGame.mHoleNm.getText().toString())) {
holder.mTextPar.setBackgroundColor(Color.parseColor("#255eba"));
notifyDataSetChanged();
}
}
这就是我认为可行的方法,但它没有,当我尝试打开ActivityGame所有这些发生的地方时,我的应用程序立即崩溃。
我认为这onBindViewHolder是实现这一目标的正确位置,但我显然采用了错误的方法。如果您对我应该在哪里或如何处理这个问题有更好的想法,请分享。提前致谢。
www说
幕布斯7119047
相关分类