Buenos días rub'n,
Ayer por fin conseguí poder guardar los datos del jugador en SQLite, al final lo que hice fue crear una nueva Activity donde mostrar por pantalla el nombre del jugador solicitado al terminar la partida junto con el tiempo de resolución del puzzle. En ese Activity habilité un botón que me permite guardar los datos (jugador y tiempo).
Ahora me encuentro con un nuevo problema.. me gustaría que en otro Activity, directamente se ejecutase una consulta a la tabla de SQLite de Partidas y me mostrase todo los datos que hay en la misma... pero por más que he probado formas de hacerlo.. no consigo que funcione.
El código que tengo hasta ahora es el siguiente;
public class HallOfFame extends AppCompatActivity {
ArrayList<String> lista = new ArrayList<>();
ArrayAdapter adaptador;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_hall_of_fame);
AdminSQLiteOpenHelper adminSQLiteOpenHelper = new AdminSQLiteOpenHelper(HallOfFame.this);
SQLiteDatabase database = adminSQLiteOpenHelper.getWritableDatabase();
String sql
= "SELECT * FROM Partidas"; Cursor registros
= database.
rawQuery(sql,
null);
if(registros.moveToFirst()){
do{
lista.add(registros.getString(1));
lista.add(registros.getString(2));
} while (registros.moveToNext());
}
listaResultados
= (ListView) findViewById
(R.
id.
listViewResultados); AdminSQLiteOpenHelper db = new AdminSQLiteOpenHelper(getApplicationContext());
adaptador = new ArrayAdapter(this, android.R.layout.activity_list_item);
listaResultados.setAdapter(adaptador);
}
}
Y en su XML correspondiente
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/listResultados"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".HallOfFame">
<ListView
android:id="@+id/listViewResultados"
android:layout_width="409dp"
android:layout_height="729dp"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_marginBottom="1dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>
Normalmente en Java puedo hacer el Read a la BBDD sin problemas, pero en Android Studio no consigo que los resultados de la tabla se muestren en pantalla a través de la ListView..
No sé ya como poder solucionar esta parte ¿Cómo debería de ponerlo en la Activity para que directamente al entrar en esa Activity se lanzará la consulta a SQLite y me mostrase los datos en pantalla?
Mil gracias por la ayuda, saludos.