18
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Aula 7 – Handler

Aula 22/05 (Handler)

Embed Size (px)

DESCRIPTION

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

Citation preview

Page 1: Aula 22/05 (Handler)

PROGRAMAÇÃO PARADISPOSITIVOS MÓVEIS

Aula 7 – Handler

Page 2: Aula 22/05 (Handler)

Objetivos da aula

Handler Exercícios

Page 3: Aula 22/05 (Handler)

O que é Handler?

Page 4: Aula 22/05 (Handler)

A classe android.os.Handler nos permite enviar ou agendar a execução de uma mensagem.

Page 5: Aula 22/05 (Handler)

Para enviar uma mensagem precisamos instanciar

android.os.Message e repassá-lo ao método sendMessage de

Handler.

Page 6: Aula 22/05 (Handler)

Para receber uma mensagem precisamos sobreescrever o método handlerMessage(message) da

classe Handler.

Page 7: Aula 22/05 (Handler)

Como executar uma mensagem?

Page 8: Aula 22/05 (Handler)

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(); } }

}

Page 9: Aula 22/05 (Handler)

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(); } }

}

Page 10: Aula 22/05 (Handler)

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(); } }

}

Page 11: Aula 22/05 (Handler)

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(); } }

}

Page 12: Aula 22/05 (Handler)

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(); } }

}

Page 13: Aula 22/05 (Handler)

Me parece sem sentido!Que tal agendarmos este

processamento?

Page 14: Aula 22/05 (Handler)

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(); } }

}

Page 15: Aula 22/05 (Handler)

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(); } }

}

Page 16: Aula 22/05 (Handler)
Page 17: Aula 22/05 (Handler)

Exercício!Criem uma tela de Splash, três segundos depois, iniciem a tela

principal do projeto e finalizem a tela de Splash...

Page 18: Aula 22/05 (Handler)

Até a próxima!