Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Listagem de registros!

Estou com um problema.

Se eu crio meu adapter assim:

private void carregaHorarios() { RemedioDAO dao = new RemedioDAO(this); List remedios = dao.buscaRemedios(); dao.close();

String[] remedios2 = {"12:30", "22:15", "15:10", "18:30", "19:40", "11:30", "12:20"};; ArrayAdapter adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, remedios2); listaRemedios.setAdapter(adapter); }

Ele mostra a listagem normalmente.

Porem, eu tentei chamar os registros do banco de dados mas não são mostrados.

private void carregaHorarios() { RemedioDAO dao = new RemedioDAO(this); List remedios = dao.buscaRemedios(); dao.close();

String[] remedios2 = {"12:30", "22:15", "15:10", "18:30", "19:40", "11:30", "12:20"}; ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, remedios); listaRemedios.setAdapter(adapter); }

Eu alterei a função de buscaRemedios para retornar a quantidade de registro e dei um Toast.makeText e ele me retorna a quantidade correta. Fiz isso também retornando somente um campo especifico e dei um Toast.makeText e ele mostro tambem.

Abaixo segue as duas class Modelo e Dao.

package br.com.borgas.leandro.remedios.modelo;

import java.io.Serializable;

/* Created by Leandro on 27/05/2016. */ public class Remedio implements Serializable { private Long id; private Long id_aluno; private String Remedio; private String Horario; private boolean Segunda; private boolean Terca; private boolean Quarta; private boolean Quinta; private boolean Sexta; private boolean Sabado; private boolean Domingo;

public boolean isDomingo() { return Domingo; }

public void setDomingo(boolean domingo) { Domingo = domingo; }

public boolean isSabado() { return Sabado; }

public void setSabado(boolean sabado) { Sabado = sabado; }

public boolean isSexta() { return Sexta; }

public void setSexta(boolean sexta) { Sexta = sexta; }

public boolean isQuinta() { return Quinta; }

public void setQuinta(boolean quinta) { Quinta = quinta; }

public boolean isQuarta() { return Quarta; }

public void setQuarta(boolean quarta) { Quarta = quarta; }

public boolean isTerca() { return Terca; }

public void setTerca(boolean terca) { Terca = terca; }

public boolean isSegunda() { return Segunda; }

public void setSegunda(boolean segunda) { Segunda = segunda; }

public String getHorario() { return Horario; }

public void setHorario(String horario) { Horario = horario; }

public String getRemedio() { return Remedio; }

public void setRemedio(String remedio) { Remedio = remedio; }

public Long getId() { return id; }

public void setId(Long id) { this.id = id; }

@Override public String toString() { return getId() + " : " + getHorario(); }

public Long getId_aluno() { return id_aluno; }

public void setId_aluno(Long id_aluno) { this.id_aluno = id_aluno; } }

package br.com.borgas.leandro.remedios.dao;

import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.widget.Toast;

import java.util.ArrayList; import java.util.List;

import br.com.borgas.leandro.remedios.modelo.Aluno; import br.com.borgas.leandro.remedios.modelo.Remedio;

/* Created by Leandro on 27/05/2016. */ public class RemedioDAO extends SQLiteOpenHelper { public RemedioDAO(Context context) { super(context, "Remedios", null, 1); }

@Override public void onCreate(SQLiteDatabase db) { String sql = "" + "CREATE TABLE tb_remedios_alu " + "( " + "Id INTEGER PRIMARY KEY, " + "Id_aluno INTEGER NULL, " + "remedio TEXT NULL, " + "horario TIME NOT NULL, " + "segunda boolean NOT NULL DEFAULT 0, " + "terca boolean NOT NULL DEFAULT 0, " + "quarta boolean NOT NULL DEFAULT 0," + "quinta boolean NOT NULL DEFAULT 0," + "sexta boolean NOT NULL DEFAULT 0," + "sabado boolean NOT NULL DEFAULT 0," + "domingo boolean NOT NULL DEFAULT 0 " + ");"; db.execSQL(sql); }

@Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { String sql = ""; switch (oldVersion) { case 1: //sql = "ALTER TABLE tb_remedios_alu ADD COLUMN telefone TEXT;"; //db.execSQL(sql); break; } }

public void insere(Remedio remedio) { SQLiteDatabase db = getWritableDatabase(); ContentValues dados = getContentValuesAlunos(remedio);

db.insert("tb_remedios_alu", null, dados); }

private ContentValues getContentValuesAlunos(Remedio remedio) { ContentValues dados = new ContentValues();

dados.put( "id_aluno", remedio.getId_aluno()); dados.put( "remedio", remedio.getRemedio()); dados.put( "horario", remedio.getHorario()); dados.put( "segunda", remedio.isSegunda()); dados.put( "terca", remedio.isTerca()); dados.put( "quarta", remedio.isQuarta()); dados.put( "quinta", remedio.isQuinta()); dados.put( "sexta", remedio.isSexta()); dados.put( "sabado", remedio.isSabado()); dados.put( "domingo", remedio.isDomingo()); return dados;

}

public List buscaRemedios() { String sql = "SELECT * FROM tb_remedios_alu ORDER BY id DESC";

SQLiteDatabase db = getReadableDatabase(); Cursor c = db.rawQuery(sql, null); List remedios = new ArrayList(); while(c.moveToNext()){ Remedio remedio = new Remedio(); remedio.setId(c.getLong(c.getColumnIndex("Id"))); remedio.setId(c.getLong(c.getColumnIndex("Id_aluno"))); remedio.setRemedio(c.getString(c.getColumnIndex("remedio"))); remedio.setHorario(c.getString(c.getColumnIndex("horario"))); remedio.setSegunda( c.getInt(c.getColumnIndex("segunda")) > 0); remedio.setTerca( c.getInt(c.getColumnIndex("terca")) > 0); remedio.setQuarta( c.getInt(c.getColumnIndex("quarta")) > 0); remedio.setQuinta( c.getInt(c.getColumnIndex("quinta")) > 0); remedio.setSexta( c.getInt(c.getColumnIndex("sexta")) > 0); remedio.setSabado( c.getInt(c.getColumnIndex("sabado")) > 0); remedio.setDomingo( c.getInt(c.getColumnIndex("domingo")) > 0); } c.close(); return remedios; }

public List buscaRemediosHorario() { String sql = "SELECT * FROM tb_remedios_alu ORDER BY id DESC";

SQLiteDatabase db = getReadableDatabase(); Cursor c = db.rawQuery(sql, null); List remedios = new ArrayList(); while(c.moveToNext()){ Remedio remedio = new Remedio(); remedio.setId(c.getLong(c.getColumnIndex("Id"))); remedio.setHorario(c.getString(c.getColumnIndex("horario"))); } c.close(); return remedios; }

public void insereHorario(String horario) { SQLiteDatabase db = getWritableDatabase(); ContentValues dados = new ContentValues(); dados.put( "horario", horario); db.insert("tb_remedios_alu", null, dados); } }

1 resposta
solução!

Eu ja resolvi. Estava criando o List remedios, mas não estava colocando registros dentro dele!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software