Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Aula 22/05 (Handler)

434 views

Published on

O que são Handlers? Para que servem? Uma introdução rápida sobre o assunto.

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

Aula 22/05 (Handler)

  1. 1. PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Aula 7 – Handler
  2. 2. Objetivos da aula  Handler  Exercícios
  3. 3. O que é Handler?
  4. 4. A classe android.os.Handler nos permite enviar ou agendar a execução de uma mensagem.
  5. 5. Para enviar uma mensagem precisamos instanciar android.os.Message e repassá-lo ao método sendMessage de Handler.
  6. 6. Para receber uma mensagem precisamos sobreescrever o método handlerMessage(message) da classe Handler.
  7. 7. Como executar uma mensagem?
  8. 8. public class MinhaActivity extends Activity implements OnClickListener { private Handler handler = new TesteHandler(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.teste_handler); Button play = (Button) findViewById(R.id.testehandler); play.setOnClickListener(this); } public void onClick(View v) { handler.sendMessage (new Message()); } private class TesteHandler extends Handler { @Override public void handleMessage(Message msg) { Toast.makeText(MinhaActivity.this, msg.what + "", Toast.LENGTH_LONG).show(); } } }
  9. 9. public class MinhaActivity extends Activity implements OnClickListener { private Handler handler = new TesteHandler(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.teste_handler); Button play = (Button) findViewById(R.id.testehandler); play.setOnClickListener(this); } public void onClick(View v) { handler.sendMessage (new Message()); } private class TesteHandler extends Handler { @Override public void handleMessage(Message msg) { Toast.makeText(MinhaActivity.this, msg.what + "", Toast.LENGTH_LONG).show(); } } }
  10. 10. public class MinhaActivity extends Activity implements OnClickListener { private Handler handler = new TesteHandler(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.teste_handler); Button play = (Button) findViewById(R.id.testehandler); play.setOnClickListener(this); } public void onClick(View v) { handler.sendMessage (new Message()); } private class TesteHandler extends Handler { @Override public void handleMessage(Message msg) { Toast.makeText(MinhaActivity.this, msg.what + "", Toast.LENGTH_LONG).show(); } } }
  11. 11. public class MinhaActivity extends Activity implements OnClickListener { private Handler handler = new TesteHandler(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.teste_handler); Button play = (Button) findViewById(R.id.testehandler); play.setOnClickListener(this); } public void onClick(View v) { handler.sendMessage(new Message()); } private class TesteHandler extends Handler { @Override public void handleMessage(Message msg) { Toast.makeText(MinhaActivity.this, msg.what + "", Toast.LENGTH_LONG).show(); } } }
  12. 12. public class MinhaActivity extends Activity implements OnClickListener { private Handler handler = new TesteHandler(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.teste_handler); Button play = (Button) findViewById(R.id.testehandler); play.setOnClickListener(this); } public void onClick(View v) { handler.sendMessage (new Message()); } private class TesteHandler extends Handler { @Override public void handleMessage(Message msg) { Toast.makeText(MinhaActivity.this, msg.what + "", Toast.LENGTH_LONG).show(); } } }
  13. 13. Me parece sem sentido! Que tal agendarmos este processamento?
  14. 14. public class MinhaActivity extends Activity implements OnClickListener { private Handler handler = new TesteHandler(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.teste_handler); Button play = (Button) findViewById(R.id.testehandler); play.setOnClickListener(this); } public void onClick(View v) { handler.sendMessage (new Message()); } private class TesteHandler extends Handler { @Override public void handleMessage(Message msg) { Toast.makeText(MinhaActivity.this, msg.what + "", Toast.LENGTH_LONG).show(); } } }
  15. 15. public class MinhaActivity extends Activity implements OnClickListener { private Handler handler = new TesteHandler(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.teste_handler); Button play = (Button) findViewById(R.id.testehandler); play.setOnClickListener(this); } public void onClick(View v) { handler.sendMessageDelayed(new Message(), 3000); } private class TesteHandler extends Handler { @Override public void handleMessage(Message msg) { Toast.makeText(MinhaActivity.this, msg.what + "", Toast.LENGTH_LONG).show(); } } }
  16. 16. Exercício! Criem uma tela de Splash, três segundos depois, iniciem a tela principal do projeto e finalizem a tela de Splash...
  17. 17. Até a próxima!

×