Publicado el Deja un comentario

06 Android. Marcador Basket

Creamos una aplicacion en la que iremos reflejando el marcador del equipo local y visitante de un partido de baloncesto.

En el codigo podras ver que se me paso poner las variables de los marcadores a cero cuando se pulsa el boton de Reset, en el metodo borra debes añadir puntuacionLocal=0 y puntuacionVisitante=0.
En unos dias lanzare un video mejorando la estetica de esta aplicacion, en ese video añadire el codigo de borrado de variables.

MainActivity

package ticoticotaa.es.marcadorbaloncesto;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity 
implements View.OnClickListener {
    public TextView marcadorLocal, marcadorVisitante,titulo;
    public Button btn1Local,btn2Local,btn3Local,
btn1Visitante,btn2Visitante,btn3Visitante,btnReset;
    public int puntuacionLocal,puntuacionVisitante,puntos;
    @Override    protected void onCreate(Bundle 
savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        titulo=(TextView)findViewById(R.id.tvTitulo);
        titulo.setText("Marcador Basket");
        marcadorLocal=(TextView)findViewById
(R.id.tvMarcadorLocal);
        marcadorVisitante=(TextView)findViewById
(R.id.tvMarcadorVisitante);
        marcadorLocal.setText("Local: "+0);
        marcadorVisitante.setText("Visitante: "+0);
        btn1Local=(Button)findViewById(R.id.btnLocal1);
        btn2Local=(Button)findViewById(R.id.btnLocal2);
        btn3Local=(Button)findViewById(R.id.btnLocal3);
        btn1Visitante=(Button)findViewById(R.id.btnVisitante1);
        btn2Visitante=(Button)findViewById(R.id.btnVisitante2);
        btn3Visitante=(Button)findViewById(R.id.btnVisitante3);
        btnReset=(Button)findViewById(R.id.btnReset);
        btn1Local.setOnClickListener(this);
        btn2Local.setOnClickListener(this);
        btn3Local.setOnClickListener(this);
        btn1Visitante.setOnClickListener(this);
        btn2Visitante.setOnClickListener(this);
        btn3Visitante.setOnClickListener(this);
        btnReset.setOnClickListener(this);
    }

    @Override    public void onClick(View view) {
        switch (view.getId()){
            case R.id.btnLocal1:
                incrementa(1,1);
                break;
            case R.id.btnLocal2:
                incrementa(1,2);
                break;
            case R.id.btnLocal3:
                incrementa(1,3);
                break;
            case R.id.btnVisitante1:
                incrementa(2,1);
                break;
            case R.id.btnVisitante2:
                incrementa(2,2);
                break;
            case R.id.btnVisitante3:
                incrementa(2,3);
                break;
            case R.id.btnReset:
                borra();
                break;
        }
    }
    public void incrementa(int equipo, int puntos){
        if (equipo==1){
            puntuacionLocal=puntuacionLocal+puntos;
            marcadorLocal.setText("Local: "+puntuacionLocal);
        }else{
            puntuacionVisitante=puntuacionVisitante+puntos;
            marcadorVisitante.setText("Visitante: "
+puntuacionVisitante);
        }
    }
    public void borra(){
        marcadorLocal.setText("Local: "+0);
        marcadorVisitante.setText("Visitante: "+0);
    }
}

Activity_main xml

<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout
 xmlns:android="http://schemas.android.com/apk/res/android"  
  xmlns:app="http://schemas.android.com/apk/res-auto"  
  xmlns:tools="http://schemas.android.com/tools" 
   android:layout_width="match_parent"    android:layout_height="match_parent"   
 tools:context="ticoticotaa.es.marcadorbaloncesto.MainActivity">

    <LinearLayout      
  android:layout_width="match_parent"    
    android:layout_height="match_parent"     
   android:orientation="vertical">

        <TextView            android:id="@+id/tvTitulo"         
   style="@style/texto" />

        <LinearLayout           
 android:layout_width="match_parent"      
      android:layout_height="wrap_content"     
       android:gravity="center"       
     android:orientation="horizontal">

            <LinearLayout             
   android:layout_width="wrap_content"              
  android:layout_height="wrap_content"              
  android:orientation="vertical">

                <TextView               
     android:id="@+id/tvMarcadorLocal"          
          style="@style/texto" />

                <Button                 
   android:id="@+id/btnLocal2"                
    style="@style/boton"              
      android:text="@string/dosPuntos"/>

                <Button                 
   android:id="@+id/btnLocal3"             
       style="@style/boton"                
    android:text="@string/tresPuntos"                    />

                <Button                 
   android:id="@+id/btnLocal1"            
        style="@style/boton"              
      android:text="@string/unPunto"/>
            </LinearLayout>

            <LinearLayout             
   android:layout_width="wrap_content"            
    android:layout_height="wrap_content"          
      android:orientation="vertical">

                <TextView                
    android:id="@+id/tvMarcadorVisitante"          
          style="@style/texto" />

                <Button              
      android:id="@+id/btnVisitante2"                
    style="@style/boton"                 
   android:text="@string/dosPuntos"/>

                <Button                 
   android:id="@+id/btnVisitante3"         
           style="@style/boton"             
       android:text="@string/tresPuntos"/>

                <Button            
        android:id="@+id/btnVisitante1"       
             style="@style/boton"            
        android:text="@string/unPunto"/>
            </LinearLayout>
        </LinearLayout>

        <Button       
     android:id="@+id/btnReset"        
    style="@style/boton"       
     android:text="@string/reset"/>
    </LinearLayout>

</android.support.constraint.ConstraintLayout>

Styles

<resources>

    <!-- Base application theme. -->   
 <style name="AppTheme"
 parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->  
      <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">
@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>
<style name="boton">
    <item name="android:layout_height">wrap_content</item>
    <item name="android:layout_width">wrap_content</item>
    <item name="android:padding">10dp</item>
    <item name="android:layout_margin">10dp</item>
    <item name="android:background">
@color/colorPrimaryDark</item>
    <item name="android:layout_gravity">center</item>
    <item name="android:gravity">center</item>
    <item name="android:textColor">@color/colorAccent</item>
</style>
    <style name="texto">
        <item name="android:layout_height">wrap_content</item>
        <item name="android:layout_width">wrap_content</item>
        <item name="android:textSize">24sp</item>
        <item name="android:textColor">@color/colorAccent</item>
        <item name="android:gravity">center</item>
        <item name="android:textColor">@color/colorAccent</item>
    </style>
</resources>

Please follow and like us:
Publicado el Deja un comentario

04. OnClickListener, añadiendo escucha a los botones.

En este ejemplo os muestro el codigo basico para que se ejecute la accion que indiquemos cuando se presiona un boton, para ello creamos una activity con 1 TextView y 2 Buttons, a los botones les indicamos que esten pendientes si se hace click en ellos con “setOnClickListener” y en el codigo de “onClick” detectaremos que boton se ha pulsado mediante “getId” para ejecutar un codigo u otro dependiendo de que boton se pulso, para ello nos ayudamos del condicional “switch”.

El codigo java seria asi:

public class MainActivity extends Activity implements View.OnClickListener {
    TextView tv;    Button btn1, btn2;    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        tv=(TextView)findViewById(R.id.tv);        btn1=(Button)findViewById(R.id.btn1);        btn2=(Button)findViewById(R.id.btn2);        btn1.setOnClickListener(this);        btn2.setOnClickListener(this);    }


    @Override
    public void onClick(View view) {
        switch (view.getId()){
            case R.id.btn1:
                tv.setText("Has pulsado el boton uno");                break;            case R.id.btn2:
                tv.setText("Has pulsado el boton dos");                break;        }
    }
}
 
 

El codigo xml de la actividad seria asi:

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:id="@+id/activity_main"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context="ticoticotaa.es.ejemploonclcklistener.MainActivity">
    <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="Pulsa un boton"        android:id="@+id/tv" />
    <Button        android:text="Boton 1"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_below="@+id/tv"        android:layout_toEndOf="@+id/tv"        android:layout_marginStart="14dp"        android:layout_marginTop="34dp"        android:id="@+id/btn1" />
    <Button        android:text="Boton 2"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_below="@+id/button3"        android:layout_alignEnd="@+id/button3"        android:layout_marginTop="72dp"        android:id="@+id/btn2" />

</RelativeLayout>

Please follow and like us: