Here is the code of my two files:

package com.drawing;


import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;

import com.drawing.LemonadeMainMenuView.LemonadeMainMenuThread;
public class Main extends Activity{
        private LemonadeMainMenuThread mLemonadeMainMenuThread;
    private LemonadeMainMenuView mLemonadeMainMenuView;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        mLemonadeMainMenuView = (LemonadeMainMenuView)
findViewById(R.id.lunar);
        mLemonadeMainMenuThread = mLemonadeMainMenuView.getThread();
    }
    @Override
    public boolean onTouchEvent(MotionEvent event) {
        mLemonadeMainMenuView.setCoords(event.getX(), event.getY(), 11);
                return true;
    }

    }


and....

package com.drawing;




import android.content.Context;
import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Paint.Style;
import android.graphics.Rect;
import android.os.Handler;
import android.os.Message;
import android.util.AttributeSet;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.widget.TextView;
public class LemonadeMainMenuView extends SurfaceView implements
SurfaceHolder.Callback{
        private boolean mRun = false;
        public boolean b = false;
        class LemonadeMainMenuThread extends Thread {
                Bitmap bitmap = null;
        private SurfaceHolder mSurfaceHolder;
        private Handler mHandler;
        private Context mContext;
        public void setRunning(boolean b) {
        mRun = b;
    }
        public LemonadeMainMenuThread(SurfaceHolder surfaceHolder, Context
context,
            Handler handler) {
                 mSurfaceHolder = surfaceHolder;
         mHandler = handler;
         mContext = context;
        }
        Resources res = getResources();

          @Override
      public void run() {
          while (mRun) {
              Canvas c = null;
              try {
                  c = mSurfaceHolder.lockCanvas(null);
                  synchronized (mSurfaceHolder) {
                          c.restore();
                      doDraw(c);
                      c.save();
                  }
              } finally {
                  if (c != null) {
                      mSurfaceHolder.unlockCanvasAndPost(c);
                  }
              }
          }
      }


        private void doDraw(Canvas canvas) {
        if (bitmap == null) {
            bitmap = Bitmap.createBitmap(1000,
1000,Bitmap.Config.ARGB_8888);
            canvas.setBitmap(bitmap);
        }
          if(b){
                  canvas.drawColor(Color.TRANSPARENT);
                  canvas.drawBitmap(bitmap, 0, 0, null);
                        Paint paint = new Paint();
                        paint.setColor(Color.BLUE);
                        paint.setStyle(Style.FILL);
                  canvas.drawCircle(mx, my, msize, paint);
          }
        }}
        private TextView mStatusText;
        private LemonadeMainMenuThread thread;
        public int mx;
        public int my;
        public int msize;
        public LemonadeMainMenuView(Context context, AttributeSet attrs) {
        super(context, attrs);
        SurfaceHolder holder = getHolder();
        holder.addCallback(this);

        thread = new LemonadeMainMenuThread(holder, context, new
Handler() {
            @Override
            public void handleMessage(Message m) {
            }
        });

        setFocusable(true);
    }
        public void surfaceChanged(SurfaceHolder arg0, int arg1, int arg2,
int arg3) {

        }
        public void surfaceCreated(SurfaceHolder arg0) {
                thread.setRunning(true);
        thread.start();
        }
        public LemonadeMainMenuThread getThread() {
        return thread;
    }
        public LemonadeMainMenuThread setThreadRunning(boolean b) {
  mRun = b;
return thread;
    }
        public LemonadeMainMenuThread setCoords(float f, float g, int size) {
                 mx = (int) f;
                 my = (int) g;
                 msize = size;
                 b = true;
                return thread;
                    }
    public void setTextView(TextView textView) {
        mStatusText = textView;
    }
        public void surfaceDestroyed(SurfaceHolder arg0) {


        }


        }
 main.xml just displays LemonadeMainMenu.java

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to