PRÁTICA 6 – BUTTON E TEXTVIEW
Objetivo:
Utilizar Buttons e TextViews em uma aplicativo.
Introdução
textViews -> Qualquer texto na tela. Fixo ou modificável em tempo de execução.
buttons -> Objeto clicável que dispara o evento onclick.
Tarefa:
Criar tipos aplicações de textView e buttons:
Programa 1 – Design padrão com um textView e um button:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:id="@+id/texto" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerInParent="false" android:text="Texto" android:layout_marginTop="14dp" android:textAppearance="?android:attr/textAppearanceLarge" /> <Button android:id="@+id/botao" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="false" android:layout_centerInParent="true" android:text="Clique Aqui!" android:clickable="true" android:layout_below="@+id/texto" /> </RelativeLayout> |
Programa 1 – OnClick Listener:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
package nome do seu pacote! // Esta linha deve ser mantida com o nome do pacote! import android.content.Intent; import android.renderscript.Double2; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.MotionEvent; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.RelativeLayout; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final TextView textView=(TextView)findViewById(R.id.texto); Button botao = (Button)findViewById(R.id.botao); //Implement listener for your button so that when you click the //button, android will listen to it. botao.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { // Perform action on click textView.setText("Você clicou!"); } }); } } |
Programa 2 – OnLongClick Listener:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
package nome do seu pacote! // Esta linha deve ser mantida com o nome do pacote! import android.content.Intent; import android.renderscript.Double2; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.MotionEvent; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.RelativeLayout; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final TextView textView=(TextView)findViewById(R.id.texto); Button botao = (Button)findViewById(R.id.botao); //Implement listener for your button so that when you click the //button, android will listen to it. botao.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View v) { textView.setText("Você clicou!"); return false; } }); } } |
Programa 3 – Modificando posição, cor e texto de um textView:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
package nome do seu pacote! // Esta linha deve ser mantida com o nome do pacote! package empty.ammsoft.empty; import android.graphics.Color; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.TextView; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final TextView textView=(TextView)findViewById(R.id.texto); Button botao = (Button)findViewById(R.id.botao); //Implement listener for your button so that when you click the //button, android will listen to it. botao.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { // Perform action on click textView.setText("Você clicou!"); textView.setX(textView.getX()+10); textView.setY(textView.getY()+10); textView.setTextColor(Color.RED); } }); } } |
Desafio: Tente obter o mesmo resultado do programa 4 ao clicar no TextView, e não no botão:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
package nome do seu pacote! // Esta linha deve ser mantida com o nome do pacote! import android.graphics.Color; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.TextView; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final TextView textView=(TextView)findViewById(R.id.texto); final Button botao = (Button)findViewById(R.id.botao); //Implement listener for your button so that when you click the //button, android will listen to it. textView.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { // Perform action on click botao.setText("Você clicou!"); botao.setX(botao.getX()+10); botao.setY(botao.getY()+10); botao.setTextColor(Color.RED); } }); } } |