martes, 27 de mayo de 2014

CÓDIGO PELOTA

package com.PELOTA_LRV.pelota;

import android.os.Bundle;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.MotionEvent;
import android.view.View;

@SuppressLint("DrawAllocation")
public class MainActivity extends Activity {

       @Override
       protected void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             VistaGrafica VGrafica = new VistaGrafica(this);
             setContentView(VGrafica);
       }

       private class VistaGrafica extends View{
             //Posición del trazo
             float X = 100;
             float Y = 100;
            
             //El constructor de la clase solo hará lo que hace su superclase
             public VistaGrafica(Context contexto){
                    super(contexto);// Aqui trabaja el constructor de la superclase
             }
            
             @Override
             protected void onDraw(Canvas canvas) {
                    super.onDraw(canvas);
            
                    //Fondo de la activity
                    Paint paint = new Paint();
                    paint.setColor(Color.WHITE);
                    canvas.drawPaint(paint);
                   
                    //Suavizo borde de los gráficos
                    paint.setAntiAlias(true);
                   
                    //Trazo una figura geométrica
                    paint.setColor(Color.RED);
                    canvas.drawCircle(X, Y, 20, paint);           
                   
                   
                    //paint.setColor(Color.BLUE);
                    //canvas.drawRect(X,Y,100,100,paint);
                   
                    //
             }
            
             public boolean onTouchEvent(MotionEvent evento) {
             if (evento.getAction () == MotionEvent.ACTION_DOWN) {
                    //Recupero las coordenadas del evento
                    X = evento.getX();
                    Y = evento.getY();

                    //Invalido para forzar el repintado de la vista
                    invalidate();
             }
            
             if (evento.getAction() == MotionEvent.ACTION_MOVE){
                   
                    //RECUPERO LAS COORDENADAS DEL EVENTO
                    X = evento.getX();
                    Y = evento.getY();
                   
                    //Invalido para forzar el repintado de la vista
                    invalidate();
                   
             }
            
             return true;
        }
      }

}

No hay comentarios:

Publicar un comentario