Movendo círculos no android

Eu tenho uma tarefa. É desenhar alguns círculos (mais de um) movendo-se pela tela. Eles devem começar a se mover depois de clicar neles. Eu tenho o código apenas para um círculo. Me dê o caminho como fazer essa tarefa, por exemplo, 5 círculos. Desde já, obrigado!

public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(new MyView(this));
    }

    class MyView extends View {
        //public    Paint c;
        public  Paint p;

        private static final int RADIUS = 46;

        private int centerX;
        private int centerY;
        private int speedX = 50;
        private int speedY = 40;
        //private Paint paint; // Создай его где-нибудь там в конструкторе


        public MyView(Context context) {
            super(context);
            p = new Paint();
            p.setColor(Color.GREEN);
        }

        @Override
        protected void onSizeChanged(int w, int h, int oldW, int oldH) {
            centerX = w / 2;
            centerY = h / 2;
        }

        protected void onDraw(Canvas c) {
            int w = getWidth();
            int h = getHeight();
            centerX += speedX;
            centerY += speedY;
            int rightLimit = w - RADIUS;
            int bottomLimit = h - RADIUS;

            if (centerX >= rightLimit) {
                centerX = rightLimit;
                speedX *= -1;
            }
            if (centerX <= RADIUS) {
                centerX = RADIUS;
                speedX *= -1;
            }
            if (centerY >= bottomLimit) {
                centerY = bottomLimit;
                speedY *= -1;
            }
            if (centerY <= RADIUS) {
                centerY = RADIUS;
                speedY *= -1;
            }

            c.drawCircle(centerX, centerY, RADIUS, p);
            postInvalidateDelayed(200);  
        }
    }
}

questionAnswers(2)

yourAnswerToTheQuestion