Pessoal, estou tentando praticar um pouco em android e estou com a seguinte duvida, estou tentando criar um login na 1 tela e registrar 1 dado na 2ª tela, só que consigo acessar a tela do registro OK, mas não consigo gravar nela, não sei bem o que pode ser, ele esta gravando em um arquivo, OK, até consigo vizualizar esse arquivo na 2 tela, mas não gravar dentro dele.
Provavelmente deve ser um erro besta, mas to apanhando feio para isso
Só que se eu criar o edit text e o text view na 1 tela, ou seja transferir os elementos para a tela inicial, ele roda que é uma blz, só da erro apos passar da tela inicial para a 2 tela.
em anexo o código
package br.com.teste.pontomovelxml;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import br.com.teste.pontomovel.R;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class Ponto extends Activity {
EditText texto;
Button btOK,grava;
TextView text;
String CATEGORIA = "livro";
String ARQUIVO = "senha.xml",msg;
FileOutputStream out;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
menuprincipal();
}
public void inicializacaoObjetos() {
try {
btOK = (Button) findViewById(R.id.BtAcesso);
texto = (EditText) findViewById(R.id.edRegistro);
grava = (Button) findViewById(R.id.btHorario);
} catch (Exception erro) {}
}
public void listeners() {
try{
btOK.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
setContentView(R.layout.hora);
inicializacaoObjetos();
listeners();
visualizarArquivo();
}
});
grava.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
gravarArquivo();
}
});
} catch (Exception erro){}
}
public void gravarArquivo()
{
try {
inicializacaoObjetos();
listeners();
msg = texto.getText().toString();
out = openFileOutput(ARQUIVO, MODE_APPEND);
ExibirMensagem("erro", msg);
out.write("\n".getBytes());
out.write(msg.getBytes());
out.close();
Log.i(CATEGORIA, msg + " - escrito com sucessso");
visualizarArquivo();
} catch (FileNotFoundException e) {
Log.e(CATEGORIA, e.getMessage(), e);
} catch (IOException e) {
Log.e(CATEGORIA, e.getMessage(), e);
} }
public void visualizarArquivo() {
inicializacaoObjetos();
listeners();
TextView text = (TextView) findViewById(R.id.tvRegistro);
try {
File f = getFileStreamPath(ARQUIVO);
Log.i(CATEGORIA, "Abrindo arquivo: " + f.getAbsolutePath());
if(f.exists()){
FileInputStream in = openFileInput(ARQUIVO);
int tamanho = in.available();
byte bytes[] = new byte[tamanho];
in.read(bytes);
String s = new String(bytes);
text.setText(s);
}else{
Log.i(CATEGORIA, "Arquivo não existe ou excluído");
text.setText("");
}
} catch (FileNotFoundException e) {
Log.e(CATEGORIA, "Arquivo não encontrado: " + e.getMessage(), e);
} catch (IOException e) {
Log.e(CATEGORIA, e.getMessage(), e);
}
}
public void ExibirMensagem(String titulo, String texto)
{
AlertDialog.Builder mensagem = new AlertDialog.Builder(Ponto.this);
mensagem.setTitle(titulo);
mensagem.setMessage(texto);
mensagem.setNeutralButton("OK", null);
mensagem.show();
}
public void menuprincipal(){
setContentView(R.layout.log);
inicializacaoObjetos();
listeners();
}
public void login()
{
try
{
setContentView(R.layout.hora);
visualizarArquivo();
} catch (Exception erro)
{
ExibirMensagem(null, "Nao localizou dados " + erro);
}
}
}