Chamar o método apenas quando passar em um determinado local ? [RESOLVIDO]

Pessoal, criei este método aqui

[code]private void teclasTipoVendas() {
if (spTipoVendas.isFocused()) {
spTipoVendas.setFocusableInTouchMode(true);
// chama a tela 1
bt1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
tipoVendas = 1;
selectColorTipoVenda(txtProduto, txtServico, txtPacote);
entraFocusItem();

// Toast.makeText(VendaClienteActivity.this, “Tecla 1”,
// Toast.LENGTH_LONG).show();
}
});

        // chama a tela 2
        bt2.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                tipoVendas = 2;
                selectColorTipoVenda(txtServico, txtProduto, txtPacote);
                entraFocusItem();

// Toast.makeText(VendaClienteActivity.this, “Tecla 2”,
// Toast.LENGTH_LONG).show();
}
});

        // chama a tela 3
        bt3.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                tipoVendas = 3;
                selectColorTipoVenda(txtPacote, txtProduto, txtServico);
                entraFocusItem();

// Toast.makeText(VendaClienteActivity.this, “Tecla 3”,
// Toast.LENGTH_LONG).show();
}
});
}
}[/code]

Ele é executado quando chega aqui

[code]if (edtProfissional.isFocused()) {

        InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(edtProfissional.getWindowToken(), 0);
        // busca os dados do profissional
        pesquisarProfissionais();

        spTipoVendas.setFocusableInTouchMode(true);
        spTipoVendas.requestFocus();
        
        //verifica a tecla precionada para saber qual deve ser executado (1-Produto, 2-serviço, 3-Pacote)
        teclasTipoVendas();  //«« -- »» QUANDO CHEGA AQUI EXECUTA O MÉTODO
        
        spTipoVendas.setBackgroundColor(Color.parseColor("#6495ED"));
        edtProfissional.clearFocus();
        edtProfissional.setFocusableInTouchMode(false);

    }  else if (edtItem.isFocused()) {
        edtQuantidade.setFocusableInTouchMode(true);
        edtQuantidade.requestFocus();
        edtItem.clearFocus();
        edtItem.setFocusableInTouchMode(false);

    } else if (edtQuantidade.isFocused()) {
        edtDesconto.setFocusableInTouchMode(true);
        edtDesconto.requestFocus();
        edtQuantidade.clearFocus();
        edtQuantidade.setFocusableInTouchMode(false);

}
[/code]

Só que preciso que pare quando pula para o proximo IF ai, e não esta parando, toda hora mostra de novo o TOAST mesmo fora do local que chamei ele, e eu não sei como parar de executar depois.

Obrigado.

retorna um valor para seu método por exemplo:

[code]public class teste(){

public boolean executou(){
	boolean retorno = false;
	
	if((1+2) == 3){
		retorno = true;
	}
	
	return retorno;

}

public class teste(){
	if (executou == true){
		System.out.println("1+2 é igual a 3");
	}else{
		System.out.println("A soma não é igual a 3");
	}
}


public static void main(String args[]){
	teste obj = new teste(); //cria objeto executando o método construtor;
}

}[/code]

Tente pensar numa lógica parecida para vc adequar ao seu codigo…

[quote=charleston10]retorna um valor para seu método por exemplo:

[code]public class teste(){

public boolean executou(){
	boolean retorno = false;
	
	if((1+2) == 3){
		retorno = true;
	}
	
	return retorno;

}

public class teste(){
	if (executou == true){
		System.out.println("1+2 é igual a 3");
	}else{
		System.out.println("A soma não é igual a 3");
	}
}


public static void main(String args[]){
	teste obj = new teste(); //cria objeto executando o método construtor;
}

}[/code]

Tente pensar numa lógica parecida para vc adequar ao seu codigo…[/quote]

Desculpe charleston10, mais eu não entendi como usar sua idéia no meu código, entendi o que vc mostrou, mais não sei como adaptar no meu código.

Talvez pq eu esteja usando este tipo de teclado que eu fiz aqui, não esta funcionando como deveria.

Ja uso este teclado aqui desta forma

[code]@Override
public void onClick(View v) {
if (v.getId() == R.id.bt_q) {
mg.AZRetornaTecla_Edit(currentEditText, “Q”);
} else if (v.getId() == R.id.bt_w) {
mg.AZRetornaTecla_Edit(currentEditText, “W”);
} else if (v.getId() == R.id.bt_e) {
mg.AZRetornaTecla_Edit(currentEditText, “E”);
} else if (v.getId() == R.id.bt_r) {
mg.AZRetornaTecla_Edit(currentEditText, “R”);
} else if (v.getId() == R.id.bt_t) {
mg.AZRetornaTecla_Edit(currentEditText, “T”);
} else if (v.getId() == R.id.bt_y) {
mg.AZRetornaTecla_Edit(currentEditText, “Y”);
} else if (v.getId() == R.id.bt_u) {
mg.AZRetornaTecla_Edit(currentEditText, “U”);
} else if (v.getId() == R.id.bt_i) {
mg.AZRetornaTecla_Edit(currentEditText, “I”);
} else if (v.getId() == R.id.bt_o) {
mg.AZRetornaTecla_Edit(currentEditText, “O”);
} else if (v.getId() == R.id.bt_p) {
mg.AZRetornaTecla_Edit(currentEditText, “P”);
} else if (v.getId() == R.id.bt_a) {
mg.AZRetornaTecla_Edit(currentEditText, “A”);
} else if (v.getId() == R.id.bt_s) {
mg.AZRetornaTecla_Edit(currentEditText, “S”);
} else if (v.getId() == R.id.bt_d) {
mg.AZRetornaTecla_Edit(currentEditText, “D”);
} else if (v.getId() == R.id.bt_f) {
mg.AZRetornaTecla_Edit(currentEditText, “F”);
} else if (v.getId() == R.id.bt_g) {
mg.AZRetornaTecla_Edit(currentEditText, “G”);
} else if (v.getId() == R.id.bt_h) {
mg.AZRetornaTecla_Edit(currentEditText, “H”);
} else if (v.getId() == R.id.bt_j) {
mg.AZRetornaTecla_Edit(currentEditText, “J”);
} else if (v.getId() == R.id.bt_k) {
mg.AZRetornaTecla_Edit(currentEditText, “K”);
} else if (v.getId() == R.id.bt_l) {
mg.AZRetornaTecla_Edit(currentEditText, “L”);
} else if (v.getId() == R.id.bt_z) {
mg.AZRetornaTecla_Edit(currentEditText, “Z”);
} else if (v.getId() == R.id.bt_x) {
mg.AZRetornaTecla_Edit(currentEditText, “X”);
} else if (v.getId() == R.id.bt_c) {
mg.AZRetornaTecla_Edit(currentEditText, “C”);
} else if (v.getId() == R.id.bt_v) {
mg.AZRetornaTecla_Edit(currentEditText, “V”);
} else if (v.getId() == R.id.bt_b) {
mg.AZRetornaTecla_Edit(currentEditText, “B”);
} else if (v.getId() == R.id.bt_n) {
mg.AZRetornaTecla_Edit(currentEditText, “N”);
} else if (v.getId() == R.id.bt_m) {
mg.AZRetornaTecla_Edit(currentEditText, “M”);
// barra de espaço
} else if (v.getId() == R.id.bt_espaco) {
mg.AZRetornaTecla_Edit(currentEditText, " “);
// limpar o edit
} else if (v.getId() == R.id.bt_limpar) {
currentEditText.setText(”");
// backspace (Limpar direita para esquerda)
} else if (v.getId() == R.id.bt_limpa_dir_esq) {
mg.AZBackspace(currentEditText);
// executa botoes numericos
} else if (v.getId() == R.id.bt_1) {
mg.AZRetornaTecla_Edit(currentEditText, “1”);
} else if (v.getId() == R.id.bt_2) {
mg.AZRetornaTecla_Edit(currentEditText, “2”);
} else if (v.getId() == R.id.bt_3) {
mg.AZRetornaTecla_Edit(currentEditText, “3”);
} else if (v.getId() == R.id.bt_4) {
mg.AZRetornaTecla_Edit(currentEditText, “4”);
} else if (v.getId() == R.id.bt_5) {
mg.AZRetornaTecla_Edit(currentEditText, “5”);
} else if (v.getId() == R.id.bt_6) {
mg.AZRetornaTecla_Edit(currentEditText, “6”);
} else if (v.getId() == R.id.bt_7) {
mg.AZRetornaTecla_Edit(currentEditText, “7”);
} else if (v.getId() == R.id.bt_8) {
mg.AZRetornaTecla_Edit(currentEditText, “8”);
} else if (v.getId() == R.id.bt_9) {
mg.AZRetornaTecla_Edit(currentEditText, “9”);
} else if (v.getId() == R.id.bt_0) {
mg.AZRetornaTecla_Edit(currentEditText, “0”);
} else if (v.getId() == R.id.bt_virgula) {
mg.AZRetornaTecla_Edit(currentEditText, “,”);
} else if (v.getId() == R.id.bt_limpar_n) {
currentEditText.setText("");
// backspace (Limpar direita para esquerda)
} else if (v.getId() == R.id.bt_limpa_dir_esq_n) {
mg.AZBackspace(currentEditText);
}

}

[/code]

E desconfio que algo possa estar interfirindo naquele método que montei.

Sou muito novato em java, por isso sinto esta dificuldade.

Obrigado.

Mais ou menos isso,
No método abaixo voce retorna um valor para ele.
Com isso voce vai poder fazer aquela verificação que vc queria, mas nao numa variavel
mas sim nele proprio.
Com isso voce vai conseguir fazer aquela verificação de 1-2-3 para fazer alguma coisa;
veja abaixo.

private static int teclasTipoVendas() {  
        if (spTipoVendas.isFocused()) {  
            spTipoVendas.setFocusableInTouchMode(true);  
            // chama a tela 1  
            bt1.setOnClickListener(new View.OnClickListener() {  
                public void onClick(View v) {  
                    tipoVendas = 1;  
                    selectColorTipoVenda(txtProduto, txtServico, txtPacote);  
                    entraFocusItem();  
  
//                  Toast.makeText(VendaClienteActivity.this, "Tecla 1",  
//                          Toast.LENGTH_LONG).show();  
                }  
            });  
  
            // chama a tela 2  
            bt2.setOnClickListener(new View.OnClickListener() {  
                public void onClick(View v) {  
                    tipoVendas = 2;  
                    selectColorTipoVenda(txtServico, txtProduto, txtPacote);  
                    entraFocusItem();  
  
//                  Toast.makeText(VendaClienteActivity.this, "Tecla 2",  
//                          Toast.LENGTH_LONG).show();  
                }  
            });  
  
            // chama a tela 3  
            bt3.setOnClickListener(new View.OnClickListener() {  
                public void onClick(View v) {  
                    tipoVendas = 3;  
                    selectColorTipoVenda(txtPacote, txtProduto, txtServico);  
                    entraFocusItem();  
  
//                  Toast.makeText(VendaClienteActivity.this, "Tecla 3",  
//                          Toast.LENGTH_LONG).show();  
                }  
            });  
        }  
		
		//retorna o valor para o metodo informando qual é o tipo de vendas a ser feito
		return tipoVendas;
    }  

no codigo abaixo voce verifica qual é o valor que esta no seu metodo e faz a verificação
e executa oq vc quiser

if (edtProfissional.isFocused()) {  
  
              
		//verifica a tecla precionada para saber qual deve ser executado (1-Produto, 2-serviço, 3-Pacote)  
		if (teclasTipoVendas()==1){//«« -- »» QUANDO CHEGA AQUI EXECUTA O MÉTODO  
			//faz algo
		}
		if (teclasTipoVendas()==2){//«« -- »» QUANDO CHEGA AQUI EXECUTA O MÉTODO  
			//faz algo
		}
		if (teclasTipoVendas()==3){//«« -- »» QUANDO CHEGA AQUI EXECUTA O MÉTODO  
			//faz algo
		}         
}  

Bom dia charleston10, obrigado por ajudar.

Então fiz conforme seu exemplo, mais não deu certo

Então neste app tenho este teclado abaixo numerico ai digito o ID do cliente pula para o proximo ai digito o ID do profissional e pula para o proximo a onde tem:
1-Produto 2-Serviço 3-Pacote

Ai tenho que selecionar no teclado apenas o numero 1, 2 ou 3 e depois de selecionar um destes 3 ir para o proximo Item, neste item preciso poder novamente utilizar as teclas 1, 2 e 3, só que não esta deixando usar nenhuma delas, pois volta a executar aquele método criado private static int teclasTipoVendas()

Então resumindo, o que eu preciso é quando entrar no focus do spTipoVendas (este ai é o pai dos (1-Produto 2-Serviço 3-Pacote)) executar este método ai e pronto acabar ali quando ja entrar no focus do item ja saber o que vou fazer.

Pois neste método do item a idéia é: Se o return tipoVendas for = 1 então vou executar um select da minha tabela produtos e trazer o retorno no edttext Item o produto, se não serviço ou se não pacote. Os selects ja estou montando aqui para o retorno, só que por isso preciso do return tipoVendas para saber qual executar, e acho que os IF’s ai é o que preciso mesmo. Porém fiz um pequeno teste aqui e não retornou o que pedi pra retornar. Veja.

[code]} else if (edtProfissional.isFocused()) {

		InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
		imm.hideSoftInputFromWindow(edtProfissional.getWindowToken(), 0);
		// busca os dados do profissional
		pesquisarProfissionais();

		spTipoVendas.setFocusableInTouchMode(true);
		spTipoVendas.requestFocus();

		// verifica a tecla precionada para saber qual deve ser executado
		// (1-Produto, 2-serviço, 3-Pacote)
		if (teclasTipoVendas() == 1) {// «« -- »» QUANDO CHEGA AQUI EXECUTA
										// O MÉTODO
			edtItem.setText("100");

		}
		if (teclasTipoVendas() == 2) {// «« -- »» QUANDO CHEGA AQUI EXECUTA
										// O MÉTODO
			edtItem.setText("200");

		}
		if (teclasTipoVendas() == 3) {// «« -- »» QUANDO CHEGA AQUI EXECUTA
										// O MÉTODO
			edtItem.setText("300");

		}

		//
		spTipoVendas.setBackgroundColor(Color.parseColor("#6495ED"));
		edtProfissional.clearFocus();
		edtProfissional.setFocusableInTouchMode(false);

	} else if (edtItem.isFocused()) {
		edtQuantidade.setFocusableInTouchMode(true);
		edtQuantidade.requestFocus();
		edtItem.clearFocus();
		edtItem.setFocusableInTouchMode(false);[/code]

O método esta assim agora

[code]private static void selectColorTipoVenda(TextView txRecebeCor,
TextView txCorTransparente1, TextView txCorTransparente2) {
txRecebeCor.setBackgroundColor(Color.parseColor("#00CC00"));
txCorTransparente1.setBackgroundColor(Color.TRANSPARENT);
txCorTransparente2.setBackgroundColor(Color.TRANSPARENT);
spTipoVendas.setBackgroundColor(Color.TRANSPARENT);
}

private static void entraFocusItem() {
	edtItem.setFocusableInTouchMode(true);
	edtItem.requestFocus();
}

private static int teclasTipoVendas() {
	if (spTipoVendas.isFocused()) {
		spTipoVendas.setFocusableInTouchMode(true);
		// chama a tela 1
		bt1.setOnClickListener(new View.OnClickListener() {
			public void onClick(View v) {
				tipoVendas = 1;
				selectColorTipoVenda(txtProduto, txtServico, txtPacote);
				entraFocusItem();
			}
		});

		// chama a tela 2
		bt2.setOnClickListener(new View.OnClickListener() {
			public void onClick(View v) {
				tipoVendas = 2;
				selectColorTipoVenda(txtServico, txtProduto, txtPacote);
				entraFocusItem();
			}
		});

		// chama a tela 3
		bt3.setOnClickListener(new View.OnClickListener() {
			public void onClick(View v) {
				tipoVendas = 3;
				selectColorTipoVenda(txtPacote, txtProduto, txtServico);
				entraFocusItem();
			}
		});
	}

	// retorna o valor para o metodo informando qual é o tipo de vendas a
	// ser feito
	return tipoVendas;
}

[/code]

Muito obrigado.

Soh uma observacao,

 if (teclasTipoVendas() == 1) {                                            
          edtItem.setText("100");
 }  
 if (teclasTipoVendas() == 2) {
  edtItem.setText("200");  
 }  
 if (teclasTipoVendas() == 3) {
     edtItem.setText("300");    
}  

Esse metodo teclasTipoVendas, pelo que eu entendi soh faz uma coisa, registra metodos callback para os botoes. Entao, nao faz sentido retornar valor como o outro amigo disse. Porque o valor 1, 2 ,3 soh vai ser “setado” quando o botao for clicado. Ou seja, se vc clicar a primera vez vai setar um valor vamos dizer 1. a segunda vez que vc chamar esse metodo, vai adicionar os listeners e retornar o valor antigo, no caso “1”

private static int teclasTipoVendas() {  
        if (spTipoVendas.isFocused()) {  
            spTipoVendas.setFocusableInTouchMode(true);  
            // chama a tela 1  
            bt1.setOnClickListener(new View.OnClickListener() {  
                public void onClick(View v) {  
                    tipoVendas = 1;  
                    selectColorTipoVenda(txtProduto, txtServico, txtPacote);  
                    entraFocusItem();  
                }  
            });  
  
            // chama a tela 2  
            bt2.setOnClickListener(new View.OnClickListener() {  
                public void onClick(View v) {  
                    tipoVendas = 2;  
                    selectColorTipoVenda(txtServico, txtProduto, txtPacote);  
                    entraFocusItem();  
                }  
            });  
  
            // chama a tela 3  
            bt3.setOnClickListener(new View.OnClickListener() {  
                public void onClick(View v) {  
                    tipoVendas = 3;  
                    selectColorTipoVenda(txtPacote, txtProduto, txtServico);  
                    entraFocusItem();  
                }  
            });  
        }    
        
        return tipoVendas;  // VAI RETORNAR SEMPRE O VALOR PREVIO
    }  

Outro ponto eh, porque vc precisa chamar esse metodo toda hora?? Pra mim vc precisaria registrar os listeners dos botoes somente uma vez.

//Daniel

Bom dia windsofhell

Eu não entendo muito bem o java, por isso minha dificuldade, se você tem uma idéia de como deve ser feito, poderia por gentileza mostrar a forma, pois eu não consegui fazer isso funcionar como deveria.

Muito obrigado.

[quote]
Outro ponto eh, porque vc precisa chamar esse metodo toda hora?? Pra mim vc precisaria registrar os listeners dos botoes somente uma vez. [/quote]

Sim não precisa ser chamado toda hora, preciso apenas pegar qual botão dei um click para poder executar o que preciso no retorno do edittext do Item.

Desculpe, mas sua dificuldade nao tem nada a ver com Java…

Mas sim com a lógica de programação garanto pra vc que se vc usasse c++ pra fazer isso vc estaria com o mesmo problema.

Se voce quer resolver esse problema de maneira rapida, simples e clara, vamos ir com calma.

Primeiramente vc tem que decidir os passos que tem que realizado, vamos lá.

1 - Usuario entrou nessa tela.
2 - Ele deve preencher os dados

  • Para isso o campo Cliente e Profissional sejam preenchidos
    3 - O usuario escolhe uma opção (Produto - Serviço ou Pacote)
    4 - bla bla bla
    5 - bla bla bla…

Monta essa estrutura pra gente.

Em segundo lugar é pensar na esquematização de como fazer

E por ultimo codificar o segundo passo.

;]

[quote=charleston10]Desculpe, mas sua dificuldade nao tem nada a ver com Java…

Mas sim com a lógica de programação garanto pra vc que se vc usasse c++ pra fazer isso vc estaria com o mesmo problema.

Se voce quer resolver esse problema de maneira rapida, simples e clara, vamos ir com calma.

Primeiramente vc tem que decidir os passos que tem que realizado, vamos lá.

1 - Usuario entrou nessa tela.
2 - Ele deve preencher os dados

  • Para isso o campo Cliente e Profissional sejam preenchidos
    3 - O usuario escolhe uma opção (Produto - Serviço ou Pacote)
    4 - bla bla bla
    5 - bla bla bla…

Monta essa estrutura pra gente.

Em segundo lugar é pensar na esquematização de como fazer

E por ultimo codificar o segundo passo.

;][/quote]

Blz, Ja arrumei aqui…Muito obrigado.

Consegui Realmente eu estava errado na lógica charleston10

Agora o codigo ficou no onclick

[code]@Override
public void onClick(View v) {
if (v.getId() == R.id.bt_q) {
mg.AZRetornaTecla_Edit(currentEditText, “Q”);
} else if (v.getId() == R.id.bt_w) {
mg.AZRetornaTecla_Edit(currentEditText, “W”);
} else if (v.getId() == R.id.bt_e) {
mg.AZRetornaTecla_Edit(currentEditText, “E”);
} else if (v.getId() == R.id.bt_r) {
mg.AZRetornaTecla_Edit(currentEditText, “R”);
} else if (v.getId() == R.id.bt_t) {
mg.AZRetornaTecla_Edit(currentEditText, “T”);
} else if (v.getId() == R.id.bt_y) {
mg.AZRetornaTecla_Edit(currentEditText, “Y”);
} else if (v.getId() == R.id.bt_u) {
mg.AZRetornaTecla_Edit(currentEditText, “U”);
} else if (v.getId() == R.id.bt_i) {
mg.AZRetornaTecla_Edit(currentEditText, “I”);
} else if (v.getId() == R.id.bt_o) {
mg.AZRetornaTecla_Edit(currentEditText, “O”);
} else if (v.getId() == R.id.bt_p) {
mg.AZRetornaTecla_Edit(currentEditText, “P”);
} else if (v.getId() == R.id.bt_a) {
mg.AZRetornaTecla_Edit(currentEditText, “A”);
} else if (v.getId() == R.id.bt_s) {
mg.AZRetornaTecla_Edit(currentEditText, “S”);
} else if (v.getId() == R.id.bt_d) {
mg.AZRetornaTecla_Edit(currentEditText, “D”);
} else if (v.getId() == R.id.bt_f) {
mg.AZRetornaTecla_Edit(currentEditText, “F”);
} else if (v.getId() == R.id.bt_g) {
mg.AZRetornaTecla_Edit(currentEditText, “G”);
} else if (v.getId() == R.id.bt_h) {
mg.AZRetornaTecla_Edit(currentEditText, “H”);
} else if (v.getId() == R.id.bt_j) {
mg.AZRetornaTecla_Edit(currentEditText, “J”);
} else if (v.getId() == R.id.bt_k) {
mg.AZRetornaTecla_Edit(currentEditText, “K”);
} else if (v.getId() == R.id.bt_l) {
mg.AZRetornaTecla_Edit(currentEditText, “L”);
} else if (v.getId() == R.id.bt_z) {
mg.AZRetornaTecla_Edit(currentEditText, “Z”);
} else if (v.getId() == R.id.bt_x) {
mg.AZRetornaTecla_Edit(currentEditText, “X”);
} else if (v.getId() == R.id.bt_c) {
mg.AZRetornaTecla_Edit(currentEditText, “C”);
} else if (v.getId() == R.id.bt_v) {
mg.AZRetornaTecla_Edit(currentEditText, “V”);
} else if (v.getId() == R.id.bt_b) {
mg.AZRetornaTecla_Edit(currentEditText, “B”);
} else if (v.getId() == R.id.bt_n) {
mg.AZRetornaTecla_Edit(currentEditText, “N”);
} else if (v.getId() == R.id.bt_m) {
mg.AZRetornaTecla_Edit(currentEditText, “M”);
// barra de espaço
} else if (v.getId() == R.id.bt_espaco) {
mg.AZRetornaTecla_Edit(currentEditText, " “);
// limpar o edit
} else if (v.getId() == R.id.bt_limpar) {
currentEditText.setText(”");
// backspace (Limpar direita para esquerda)
} else if (v.getId() == R.id.bt_limpa_dir_esq) {
mg.AZBackspace(currentEditText);
// executa botoes numericos
} else if (v.getId() == R.id.bt_1) {
mg.AZRetornaTecla_Edit(currentEditText, “1”);
tipoVendas = 1;
if (edtAuxiliar.isFocused()) {
if (tipoVendas == 1) {
selectColorTipoVenda(txtProduto, txtServico, txtPacote);
entraFocusItem();
}
}

	} else if (v.getId() == R.id.bt_2) {
		mg.AZRetornaTecla_Edit(currentEditText, "2");
		tipoVendas = 2;
		if (edtAuxiliar.isFocused()) {
			if (tipoVendas == 2) {
				selectColorTipoVenda(txtServico, txtProduto, txtPacote);
				entraFocusItem();
			}
		}

	} else if (v.getId() == R.id.bt_3) {
		mg.AZRetornaTecla_Edit(currentEditText, "3");
		tipoVendas = 3;
		if (edtAuxiliar.isFocused()) {
			if (tipoVendas == 3) {
				selectColorTipoVenda(txtPacote, txtProduto, txtServico);
				entraFocusItem();
			}
		}

	} else if (v.getId() == R.id.bt_4) {
		mg.AZRetornaTecla_Edit(currentEditText, "4");
	} else if (v.getId() == R.id.bt_5) {
		mg.AZRetornaTecla_Edit(currentEditText, "5");
	} else if (v.getId() == R.id.bt_6) {
		mg.AZRetornaTecla_Edit(currentEditText, "6");
	} else if (v.getId() == R.id.bt_7) {
		mg.AZRetornaTecla_Edit(currentEditText, "7");
	} else if (v.getId() == R.id.bt_8) {
		mg.AZRetornaTecla_Edit(currentEditText, "8");
	} else if (v.getId() == R.id.bt_9) {
		mg.AZRetornaTecla_Edit(currentEditText, "9");
	} else if (v.getId() == R.id.bt_0) {
		mg.AZRetornaTecla_Edit(currentEditText, "0");
	} else if (v.getId() == R.id.bt_virgula) {
		mg.AZRetornaTecla_Edit(currentEditText, ",");
	} else if (v.getId() == R.id.bt_limpar_n) {
		currentEditText.setText("");
		// backspace (Limpar direita para esquerda)
	} else if (v.getId() == R.id.bt_limpa_dir_esq_n) {
		mg.AZBackspace(currentEditText);
	}

{[/code]

Obrigado pessoal