Codigo fonte para android (EDIT TEXT)

OLA PESSOAL…

ESTOU FAZENDO UM EXERCICIO COM EDITTEXT. SEGUE:

// esse botão fica desabilitado
 bt.setEnabled(false);


    String a= ed.getText().toString();

  // eu faço o teste se o editText está vazio
       if (a == ""){      
      
        
      //ao digitar algo habilitaria o botao
        bt.setEnabled(true);
        bt.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                String a = ed.getText().toString();
                text.setText("SEJA BEM VNIDO");
                txt2.setText(a);
                tela2.setEnabled(true);
            }
        });
       
       }

MAS NAO ESTÁ FUNCIONANDO. O BOTAO JA COMEÇA HABILITADO. NAO SEI ONDE ESTÁ O ERRO… POR FAVOR ME AJUDEM ONDE ESTÁ O ERRO…VALEUUUUUUU

Bom dia!

Primeiramente para que o botão inicie como false você deve passar essa condição no método init(); pois este método executa tudo o que estiver dentro dele assim que a aplicação é iniciada.

protected void init(){
    bt.setEnabled(false);       
} 

A respeito do seu teste, o botão começa habilitado pois o teste que você fez está tratado de forma errada, da maneira como implementou o botão será habilitado se o campo estiver vazio, e não se ele for diferente de vazio, e assim não atenderá da forma que você quer que aconteça!

if (!a.equals("")){      
        bt.setEnabled(true);
        bt.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                String a = ed.getText().toString();
                text.setText("SEJA BEM VNIDO");
                txt2.setText(a);
                tela2.setEnabled(true);
            }
   });

Boa sorte!