Uso dos controles – TextView
Usado para exibir um trecho de texto na interface.
<TextView
android:id="@+id/text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Terceira atividade" />Code language: HTML, XML (xml)
android:id Identificador único do controle atual
android:layout_width Largura
android:layout_height Altura
Todos os controles do Android possuem esses dois atributos, com três valores possíveis: match_parent、fill_parent、wrap_content
android:text Texto
Um define que o tamanho é decidido pelo contêiner pai
O outro define que o tamanho depende do conteúdo
Claro, além dessas três opções, você pode definir um tamanho fixo. Mas isso causará problemas de adaptação em telas diferentes.
android:gravity=”center”
Alinhamento do texto: top bottom left right center
android:textSize=”24sp”
Tamanho da fonte
android:textColor=”#00ff00″
No Android, usamos a unidade sp para definir a cor da fonte.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Aqui só exibe texto"
android:gravity="center_vertical"
android:textSize="28sp"
android:textColor="#57d038"
/>
</LinearLayout>Code language: HTML, XML (xml)

Uso dos controles – Button
Controle para interação com o usuário.
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Sair do aplicativo" />Code language: HTML, XML (xml)
Desativar a conversão automática para letras maiúsculas
android:textAllCaps = “false”
Adicionar evento de escuta
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.textview_layout);
Button bt = (Button) findViewById(R.id.button);
bt.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
//
}
});
}
}Code language: JavaScript (javascript)
Adicionar listener de evento implementando a interface
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.textview_layout);
Button bt = (Button)findViewById(R.id.button);
bt.setOnClickListener(this);// Registra o listener de evento no contexto atual
}
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.button:
//Tratar evento de clique do botão
Toast.makeText(MainActivity.this,"foxdevelop.com",Toast.LENGTH_LONG).show();
break;
}
}
}Code language: PHP (php)

Uso dos controles – EditText
O EditText permite que o usuário digite e edite conteúdo, e podemos manipular esse conteúdo no código.
Muito utilizado
Usado em aplicativos como WeChat, envio de SMS, bate-papo QQ e outros.
<EditText
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content" />Code language: HTML, XML (xml)
Texto de dica no campo de edição

Adicione o atributo
android:hint=”Digite seu nome”
Quando o texto digitado for muito longo

Podemos configurar
Número máximo de linhas
android:maxLines=”2″

<EditText
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Digite seu nome"
android:maxLines="2"
/>Code language: HTML, XML (xml)
Teste: clique no botão para exibir o conteúdo da caixa de texto
//Obter conteúdo da caixa de edição
EditText et = (EditText)findViewById(R.id.edit_text);
String input = et.getText().toString();
Toast.makeText(NormalActivity.this,input,Toast.LENGTH_LONG).show();Code language: JavaScript (javascript)

Uso dos controles – ImageView
Controle para exibir imagens na interface.
Precisamos preparar algumas imagens
Geralmente são colocadas nas pastas iniciadas por drawable
Criamos uma pasta drawable-xhdpi dentro de res e adicionamos duas imagens img1.png img2.png

Adicione ImageView e defina a imagem
<ImageView
android:id="@+id/imageview1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/img1"
/>Code language: HTML, XML (xml)
Alterar imagem ao clicar no botão

//Alterar imagem ao clicar no botão
ImageView iv = (ImageView) findViewById(R.id.imageview1);
iv.setImageResource(R.drawable.img2);Code language: JavaScript (javascript)
Uso dos controles – ProgressBar
Exibe uma barra de progresso na interface
Indica que o aplicativo está carregando dados
É bem simples de usar
<ProgressBar
android:id="@+id/progress_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content" />Code language: HTML, XML (xml)
Todos os controles têm esse atributo

Atributo visibility com três valores possíveis:
visible Visível, valor padrão
invisible Não visível, mas ocupa o mesmo espaço e tamanho (como transparente)
gone Não visível e não ocupa espaço na tela
Usamos setVisibility para alterar
View.VISIBLE
View.INVISIBLE
View.GONE
Exibir e ocultar barra de progresso com clique no botão
//Alternar exibição da barra de progresso com clique
ProgressBar pb = (ProgressBar) findViewById(R.id.progress_bar);
if (pb.getVisibility()==View.GONE){
pb.setVisibility(View.VISIBLE);
}
else {
pb.setVisibility(View.GONE);
}Code language: JavaScript (javascript)
Definir estilo da barra de progresso
style=”?android:attr/progressBarStyleHorizontal”
android:max=”100″ Define o valor máximo da barra
Modificar de forma dinâmica

//Alterar dinamicamente a barra de progresso
ProgressBar pb = (ProgressBar) findViewById(R.id.progress_bar);
pb.setProgress(pb.getProgress()+10);Code language: JavaScript (javascript)

Uso dos controles – AlertDialog
O AlertDialog abre uma caixa de diálogo sobre a tela atual.
Essa caixa fica sobre todos os elementos da interface.
Por isso, o AlertDialog é usado para informações importantes ou alertas.
Por exemplo, um aviso antes de apagar algo importante para evitar exclusão acidental.
Ao clicar no botão

Não precisamos adicionar esse controle no arquivo de layout.

Ele pode ser criado totalmente no código Java
//Criar uma caixa de diálogo
AlertDialog.Builder ad = new AlertDialog.Builder(NormalActivity.this);
ad.setTitle("Título da caixa");
ad.setMessage("Texto de aviso");
ad.setCancelable(false);
ad.setPositiveButton("Confirmar", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
//Ação ao clicar em confirmar
Toast.makeText(NormalActivity.this,"Você clicou em confirmar", Toast.LENGTH_LONG).show();
}
});
ad.setNegativeButton("Cancelar", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
//Ação ao clicar em cancelar
Toast.makeText(NormalActivity.this,"Você clicou em cancelar", Toast.LENGTH_LONG).show();
}
});
ad.show();Code language: JavaScript (javascript)
Uso dos controles – ProgressDialog
ProgressDialog é parecido com AlertDialog, ambos abrem uma caixa de diálogo sobre a interface.
A diferença é que o ProgressDialog exibe uma barra de progresso.
Usado geralmente para operações demoradas, para o usuário aguardar.
//Uso do ProgressDialog
ProgressDialog pd = new ProgressDialog(NormalActivity.this);
pd.setTitle("Título");
pd.setMessage("Conteúdo");
pd.setCancelable(true);
pd.show();Code language: JavaScript (javascript)

Controles