Srs.
Tenho a seguinte classe:
package ifcat.com.br.senha;
import android.content.Context;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.List;
public class clsAdapter extends BaseAdapter {
private final List<Tentativas> jogadasEfetuadas = new ArrayList<>();
private Context contexto;
public clsAdapter(Context contexto){
this.contexto = contexto;
}
@Override
public int getCount() {
return jogadasEfetuadas.size();
}
@Override
public Tentativas getItem(int position) {
return jogadasEfetuadas.get(position);
}
@Override
public long getItemId(int position) {
return jogadasEfetuadas.get(position).getOrdem();
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View vwLinha = LayoutInflater.from(contexto).inflate(R.layout.activity_jogo_jogada, parent, false);
TextView ordem = vwLinha.findViewById(R.id.txtJogada_Ordem);
TextView numero = vwLinha.findViewById(R.id.txtJogada_Numero);
TextView resultado = vwLinha.findViewById(R.id.txtJogada_Resultado);
Log.i("TAG", "getView: Aqui");
Tentativas nTent = jogadasEfetuadas.get(position);
ordem.setText(nTent.getOrdem());
numero.setText(nTent.getNumero());
resultado.setText(nTent.getResultado());
return vwLinha;
}
public void clear() {
jogadasEfetuadas.clear();
}
public void addAll(List<Tentativas> tentativasFeitas) {
jogadasEfetuadas.addAll(tentativasFeitas);
}
}
Observem que no getView tenho um Log.i("TAG", "getView: Aqui") que nunca aparece.
Na minha activity tenho essa declaração e essa função:
private clsAdapter adapter;
private void configuraListaTentativas() {
ListView lista = findViewById(R.id.lstTentativas);
adapter = new clsAdapter(activity_Jogo.this);
lista.setAdapter(adapter);
}
E quando faço a jogada, tenho o seguinte código:
adapter.clear();
adapter.addAll(jogando.retornaTentativas());
Essa função retornaTentativas devolve uma lista de tentativas (já fiz o teste e está correto).
O problema é que não preenche minha lista, que está assim, no arquivo activity_jogo_jogada.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/txtJogada_Ordem"
android:layout_width="45dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_toLeftOf="@id/txtJogada_Numero"
android:textAlignment="center"
android:textSize="20sp"
tools:text="ordem da jogada" />
<TextView
android:id="@+id/txtJogada_Numero"
android:layout_width="132dp"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/txtJogada_Resultado"
android:textSize="20sp"
android:textStyle="bold"
android:textAlignment="center"
tools:text="valor jogado" />
<TextView
android:id="@+id/txtJogada_Resultado"
android:layout_width="210dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textSize="20sp"
tools:text="teste do resultado" />
</RelativeLayout>
Não consigo achar o erro. Quem puder ajudar, agradeço.