But when I try to do this ... my method does not work ... it closes or inserts normally ... the method is this
This is the libClass
public class Local {
private int id;
private String local;
private String endereco;
private String email;
private String telefone;
private Float avaliacao;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getLocal() {
return local;
}
public void setLocal(String local) {
this.local = local;
}
public String getEndereco() {
return endereco;
}
public void setEndereco(String endereco) {
this.endereco = endereco;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getTelefone() {
return telefone;
}
public void setTelefone(String telefone) {
this.telefone = telefone;
}
public Float getAvaliacao() {
return avaliacao;
}
public void setAvaliacao(Float avaliacao) {
this.avaliacao = avaliacao;
}
}
This is the button method that adds:
public void adicionar(View v) {
if (editLocal.getText().toString().trim().isEmpty()) {
editLocal.setError("Coloque um Local!");
} else {
if (editEndereco.getText().toString().trim().isEmpty()) {
editEndereco.setError("Coloque um Endereço");
} else {
if (editTelefone.getText().toString().isEmpty()) {
editTelefone.setError("Coloque um Telefone!");
} else {
Local local = new Local();
local.setId(0);
local.setLocal(editLocal.getText().toString());
local.setEndereco(editEndereco.getText().toString());
local.setEmail(editEmail.getText().toString());
local.setTelefone(editTelefone.getText().toString());
local.setAvaliacao(ratingBarNota.getRating());
LocalBLL localBLL = new LocalBLL(getApplicationContext());
Utilidades util = new Utilidades();
//aqui começa a comparacao
nomeLocal = editLocal.getText().toString();
compara = localBLL.comparaLocais(nomeLocal);
if (compara == 1) {
util.exibirToast(getApplicationContext(), "Local já Cadastrado!");
} else {
try {
localBLL.insertLocal(local);
util.exibirToast(getApplicationContext(), "Você Salvou um Local!");
popularListView();
cancelar();
} catch(Exception ex) {
util.exibirToast(getApplicationContext(), getExternalCacheDir().toString());
}
}
}
}
}
}
And this is the libBLL method:
public int comparaLocais(String nomeLocal) {
LocalDAL localDAL = new LocalDAL(context);
Local local = null;
return localDAL.comparaLocal(nomeLocal);
}
And this is the libDAL method:
public int comparaLocal(String nomeLocal) {
String SELECT_LOCAISCOMPARACAO = "SELECT * from locais where nome_local ='" + nomeLocal + "'";
BancoDados banco = new BancoDados(context);
SQLiteDatabase db = banco.getReadableDatabase();
Cursor cursor = db.rawQuery(SELECT_LOCAISCOMPARACAO, null);
Local local = null;
if (cursor.moveToFirst()) {
local = new Local();
do {
local.setId(cursor.getInt(0));
local.setLocal(cursor.getString(1));
local.setEndereco(cursor.getString(2));
local.setEmail(cursor.getString(3));
local.setTelefone(cursor.getString(4));
local.setAvaliacao(cursor.getFloat(5));
} while ( cursor . moveToNext ());
}
comparacao = local.getLocal();
if (nomeLocal == comparacao) {
return 1;
} else {
return 0;
}
}
In my opinion ... it was to be working ... I'm a beginner on Android ... so if you guys can help me thank you very much ... I'm breaking my head kk to my view the variable compares does not receive the value of local.getlocal ();
Thanks, if anyone knows right away The error in logcat is that of androidstudio is this: