En esta unidad veremos instrucciones para dibujo en Android.

Proyecto 0024

Este proyecto implica trabajar con la parte lógica.

Hay que modificar a MainActivity.java de forma profunda de la siguiente forma, primero veamos como nos presenta el diseño inicial:

package com.example.dell.proyecto0024;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}

se modificara a la siguiente forma:

donde se agrega la clase paint y es donde se configura la forma de dibujar como el color, lineas, etc.

package com.example.dell.proyecto0024;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Vista vista = new Vista(this); //definicion de nuevo objeto
        setContentView (vista); // se pone en contexto
    }
    class Vista extends View{

        public Vista (Context context){ //se crea la clase vista declarada anteriormente
            super (context);
        }

        public void onDraw(Canvas canvas) { //camvas es el lienzo donde  se dibujan los elementos
            Paint paint = new Paint();
            paint.setStyle(Paint.Style.STROKE); //atributo de la funcion paint
            paint.setStrokeWidth(5);
            paint.setColor(Color.BLUE); //cambio de color

            int ancho = canvas.getWidth();
            canvas.drawRect(10,70,ancho-10,20,paint); //esto dibujara un rectangulo en al parte superior
        }
    }
}

prueba este código en tu celular

establecemos coordenadas para definir la posición de inicio.

package com.example.dell.proyecto0024;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Path;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Vista vista = new Vista(this); //definicion de nuevo objeto
        setContentView (vista); // se pone en contexto
    }
    class Vista extends View{
        float x = 50;
        float y = 50;
        String accion = "accion";
        Path path = new Path();

        public Vista (Context context){ //se crea la clase vista declarada anteriormente
            super (context);
        }

        public void onDraw(Canvas canvas) { //camvas es el lienzo donde  se dibujan los elementos
            Paint paint = new Paint();
            paint.setStyle(Paint.Style.STROKE); //atributo de la funcion paint
            paint.setStrokeWidth(5);
            paint.setColor(Color.BLUE); //cambio de color

            int ancho = canvas.getWidth();

            if(accion=="down")
                path.moveTo(x,y);
            if(accion == "move")
                path.lineTo(x,y);
            //canvas.drawRect(10,70,ancho-10,20,paint); //esto dibujara un rectangulo en al parte superior
            canvas.drawPath(path,paint);

        }
        public boolean onTouchEvent(MotionEvent e){
           x = e.getX();
           y = e.getY();

           if(e.getAction() == MotionEvent.ACTION_DOWN) //si se mueve hacia abajo cuando toma esta accion
               accion = "down";
           if(e.getAction() == MotionEvent.ACTION_MOVE)
               accion = "move";

           invalidate();
           return true;


        }
    }
}



REFERENCIAS

Proyecto0024
https://www.momandgeek.com/aplicacion-de-dibujo-app-inventor/
http://www.androidcurso.com/index.php/recursos/35-unidad-4-graficos-en-android/133-canvas