Trazer mais de um dado do mysql para aplicativo

0 respostas
M

Olá, sou iniciante em desenvolvimento Android, e estou fazendo um aplicativo simples para apresentar na faculdade q busca informações de um banco mysql (localhost por enquanto), o problema é o seguinte:
Tenho uma classe para listar os clientes, ao clicar em um, conforme aprendi em video aulas, abre outra classe que é o formulario para mostrar os dados daquele cliente, que são nome, cpf, telefone, celular e e-mail, mas em todos os campos aparece o nome e não os outros dados.
Obs: não estou fazendo orientado a objeto e sim estruturado, conforme eu vi nas video aulas.

package br.com.maraliza.aplicativo;
import android.app.AlertDialog;
import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.os.StrictMode;
import android.util.Log;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class ClienteListar extends ListActivity{
 
	 String [] listaClientes;
	
	 int posicao=0;
	 public void onCreate(Bundle savedInstanceState) {
	        super.onCreate(savedInstanceState);
	        	        	        
	        Log.i("logar", "entrou no evento");
			String url="http://10.0.2.2/bdsistemas/listarCliente.php";			
			String respostaRetornada = null;
			Log.i("logar", "vai entrar no try");
			try {
				respostaRetornada = ConexaoHttpClient.executaHttpGet(url);
				String resposta = respostaRetornada.toString();
				Log.i("clientes", ""+resposta);	
								
				char separador='#';
				int contaClientes=0;
				for(int i=0;i<resposta.length();i++)
					if(separador == resposta.charAt(i))
						contaClientes++;
				
				listaClientes = new String[contaClientes];
				
				char caracter_lido=resposta.charAt(0);
				String nome="";
				for (int i=0;caracter_lido != '^';i++)
				{
					caracter_lido = resposta.charAt(i);
					Log.i("chars dos clientes",""+caracter_lido);
					if (caracter_lido != '#')
						nome+= (char) caracter_lido;
					else
					{ 
						Log.i("Nome",""+nome);
						listaClientes[posicao]=""+nome;
						Log.i("Nome posicao ["+posicao+"]",""+listaClientes[posicao]);
						posicao++;
						nome="";
					}
				}
				Log.i("FIM","FIM da leitura de nomes"); 
				
			}
			catch(Exception erro)
			{
				Log.i("erro", "erro = "+erro);
				
			}
				       
	        ArrayAdapter<String> aaClientes = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listaClientes);
	        setListAdapter(aaClientes);
        	       
	 }
		   public void mensagemExibir(String titulo, String texto)
		   {
				AlertDialog.Builder mensagem = new AlertDialog.Builder(ClienteListar.this);
				mensagem.setTitle(titulo);
				mensagem.setMessage(texto);
				mensagem.setNeutralButton("OK",null);
				mensagem.show();
		   }
		   
		   protected void onListItemClick(ListView l, View v, int position, long id)
			 {
				 super.onListItemClick(l, v, position, id);
				 Object objetoSelecionado = this.getListAdapter().getItem(position);
				 final String clienteSelecionado = objetoSelecionado.toString();
				 Intent ITelaDetalhes = new Intent(ClienteListar.this, FormDetalhesCliente.class);
				 ITelaDetalhes.putExtra("clienteSelecionado", clienteSelecionado);
				 startActivity(ITelaDetalhes);
			 }	   
}
[code]


Aqui a classe q seria o formulario q abriria os detalhes daquele cliente:


package br.com.maraliza.aplicativo;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Intent;
import android.os.Bundle;
import android.os.StrictMode;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class FormDetalhesCliente extends Activity {
  
  (TENHO QUE CHAMAR ESSE CODIGO PHP A BAIXO PARA LISTAR OS DADOS DO CLIENTE SELECIONADO, MAS MESMO ASSIM ELE  RETORNA O NOME EM TODOS OS CAMPOS)

  url="http://10.0.2.2/bdsistemas/listarCliDetalhes.php";

  EditText Edt_cliente, Edt_cpf, Edt_fone, Edt_cell, Edt_email;
  TextView tvcli_nome,tvcli_cpf,tvcli_fone,tvcli_cell,tvcli_email;
  Button Btclivoltar;
  
  public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.cliente_detalhes);
      
      final String dadosRecebidos;
      
      Edt_cliente=(EditText) findViewById(R.id.Edt_cliente);
      Edt_cpf=(EditText) findViewById(R.id.Edt_cpf);
      Edt_fone=(EditText) findViewById(R.id.Edt_fone);
      Edt_cell=(EditText) findViewById(R.id.Edt_cell);
      Edt_email=(EditText) findViewById(R.id.Edt_email);
      Btclivoltar=(Button) findViewById(R.id.Btclivoltar);
             
      Intent IDadosRecebidos = getIntent();
      if (IDadosRecebidos != null)
      {
      	 dadosRecebidos = IDadosRecebidos.getStringExtra("clienteSelecionado");
     
      	if (dadosRecebidos != null)
      	{
        		Edt_cliente.setText(""+dadosRecebidos);
        		Edt_cpf.setText(""+dadosRecebidos);
        		Edt_fone.setText(""+dadosRecebidos);
        		Edt_cell.setText(""+dadosRecebidos);
        		Edt_email.setText(""+dadosRecebidos);
      	}        	
      }     
      
      Btclivoltar.setOnClickListener(new View.OnClickListener() {			
			public void onClick(View v) {
				startActivity(new Intent(FormDetalhesCliente.this, ClienteListar.class));				  
			}
		});

  }
	   public void mensagemExibir(String titulo, String texto)
	   {
			AlertDialog.Builder mensagem = new AlertDialog.Builder(FormDetalhesCliente.this);
			mensagem.setTitle(titulo);
			mensagem.setMessage(texto);
			mensagem.setNeutralButton("OK",null);
			mensagem.show();
	   }
}

Alguém poderia me ajudar por favor, da forma mais simples possivel pq além de ser iniciante tbm não tenho muito tempo para a apresentação desse aplicativo.

Criado 23 de outubro de 2013
Respostas 0
Participantes 1