Paralelamente aos modos de gravação e aprendizagem, foi realizado o design das telas. A confecção das telas foi realizada no próprio Android Studio, depois de desenhadas as imagens da tela tema e de cada botão.
Para realizar a criação da interface de interação com o usuário(telas do aplicativo) foi utilizado a classe “AppCompatActivity” que representa uma Atividade. Essa classe possui o arquivo “.java” e o arquivo “.xml” onde esta controla como serão dispostos as imagens, os botões as mensagens e todos elementos que interagem ou não com o usuário. A primeira é responsável por controlar as atividades e eventos relacionados a cada elemento desse conjunto.
No arquivo .java declaramos os botões e instanciamos recuperando-os do arquivo xml. Para tal utilizamos objetos como “Button” ou “TestView” que possibilitam essa manipulação direta. Uma explicação geral pode ser vista na figura que segue.
Antes disso leia uma breve explicação de cada método ou instancia:
onCreate() – É a primeira função a ser executada em uma Activity. Geralmente é a responsável por carregar os layouts XML e outras operações de inicialização. É executada apenas uma vez.
onStart() – É chamada imediatamente após a onCreate() – e também quando uma Activity que estava em background volta a ter foco.
onResume() – Assim como a onStart(), é chamada na inicialização da Activity e também quando uma Activity volta a ter foco. Qual a diferença entre as duas? A onStart() só é chamada quando a Activity não estava mais visível e volta a ter o foco, a onResume() é chamada nas “retomadas de foco”.
onPause() – É a primeira função a ser invocada quando a Activity perde o foco (isso ocorre quando uma nova Activity é iniciada).
onStop() – Só é chamada quando a Activity fica completamente encoberta por outra Activity.
onDestroy() – A última função a ser executada. Depois dela, a Activity é considerada “morta” – ou seja, nao pode mais ser relançada. Se o usuário voltar a requisitar essa Activity, um novo objeto será contruído.
onRestart() – Chamada imediatamente antes da onStart(), quando uma Activity volta a ter o foco depois de estar em background.
Um exemplo de declaração e uso:
Dentro do arquivo “.java”:
// Este deve ser declarado dentro da classe mas fora do arquivo “onCreate”
private Button BotaoVolta;
//aqui serão colocados tudo que se refere a tela ou durante a execução da mesma
protected void onCreate(Bundle savedInstanceState) {
//instancia a tela
super.onCreate(savedInstanceState);
//cria a tela referente ao arquivo .”activity_modo_livre”
setContentView(R.layout.activity_modo_livre);
//a partir daqui será instanciado o botão recuperando o botão criado dentro do arquivo //XML
BotaoVolta = (Button) findViewById(R.id.ButtonVoltar);
// essa função declara um evento a partir do click do botão
BotaoVolta.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(ModoLivre.this, MainActivity.class); //nessa caso o evento do botão
//esta relacionado com a troca de telas
startActivity(intent);
finish();
}
});
}
Dentro do arquivo XML:
<Button
android:layout_gravity=”center”
android:layout_width=”140dp”
android:layout_height=”75dp”
android:background=”@drawable/bvoltar”
// aqui é colocado a identificação de como será recuperado o botão pelo .JAVA
android:id=”@+id/ButtonVoltar”
android:paddingTop=”32sp”
android:drawablePadding=”-15sp”
android:layout_marginTop=”180dp”/>
//o resto é apenas configuração e característica do botão como tamanho e posição
O resultado desses dois arquivos em conjunto resulta na tela propriamente dita e o evento de voltar para a atividade anterior do aplicativo, que no caso é a classe principal do programa: