Java: Cómo hacer el cambio RecyclerView número de artículo en el mismo número en la actividad? (tiempo real)

antsakontsa:

Como dice el título, necesito hacer RecyclerView número de artículo, el cambio a ese mismo número, que es en esa misma actividad (en tiempo real). Por eso, cuando el número de cambios de actividad, además, que el número que está en el elemento RecyclerView, debe cambiar a ese mismo número.

introducir descripción de la imagen aquí

Cuando se inicia el juego, número par y esos números en RecyclerView son los mismos que debería, pero ...

introducir descripción de la imagen aquí

Ahora el segundo agujero número par cambia a 3, pero esos números de artículos RecyclerView siguen siendo 4, pero en cambio, que debe ser también 3. ¿Puedo hacer que este cambio suceda?

Aquí está mi adaptador:

@Override
    public void onBindViewHolder(@NonNull GameViewHolder holder, int position) {
        GameItem currentItem = mGameList.get(position);

        holder.mTextPlayer.setText(currentItem.getText1());
        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()) == 1) {
            holder.mTextPar.setBackgroundResource(R.drawable.border_box_yellow);
        } else if (Integer.parseInt(holder.mTextPar.getText().toString()) < Integer.parseInt(ActivityGame.mParNm.getText().toString())) {
            holder.mTextPar.setBackgroundResource(R.drawable.border_box_blue);
        } else if (Integer.parseInt(holder.mTextPar.getText().toString()) > Integer.parseInt(ActivityGame.mParNm.getText().toString())) {
            holder.mTextPar.setBackgroundResource(R.drawable.border_box_red);
        } else if (Integer.parseInt(holder.mTextPar.getText().toString()) == Integer.parseInt(ActivityGame.mParNm.getText().toString())) {
            holder.mTextPar.setBackgroundResource(R.drawable.border_box_green);
        }

Aquí en mi GameAdapter, donde hice esos colores elementos de fondo (de acuerdo también a ese número par) Traté de hacer:

holder.mTextPar.setText(ActivityGame.mParNm.getText().toString());

Lo que significa que he tratado de establecer el número de acuerdo al número par, pero no cambió en absoluto, que acaba de cambiar el fondo de los artículos, pero el número se mantuvo igual.

Hari N Jha:

Hacer dos cosas simples.

Crear un método en el adapter-

public void updateAdapterData() {
    notifyDataSetChanged();
}

A continuación, añadir el siguiente método en la actividad y lo llaman cuando hay un cambio en el valor nominal de su actividad.

private void updateGameArrayList(int parVal) {
    for(GameItem model : GameList) {
        model.setText2(parVal);
        adapterVariableInActivity.updateAdapterData();
    }
}

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=230194&siteId=1
Recomendado
Clasificación