I  have solve my problem, but i don't know how to do to keep my draw
when i draw again. The onDraw clear sreen to draw again.
Do you know how I can do?
thanks

On 26 oct, 10:55, Nightwolf <mikh...@gmail.com> wrote:
> Try adding invalidate() in your translate() method instead of
> this.draw(_myCanvas);.
>
> On Oct 25, 2:37 pm, "stephane.cast...@gmail.com"
>
> <stephane.cast...@gmail.com> wrote:
> > Hi!
> > I have a problem with one of my app. I try to make a paint application
> > but nothing isdrawon the screen (except the first circle which is
> >drawon the launch).
> > The log Cat seems to be correct and i get the right x/y coordinates. I
> > think i do something wrong on the ondraw.
>
> > do you see my problem?
>
> > Thanks.
>
> > this is my code :
>
> > public class Main extends Activity {
> >     /** Called when the activity is first created. */
>
> >         private TableLayout myView;
>
> >     @Override
> >     public void onCreate(Bundle savedInstanceState) {
> >         super.onCreate(savedInstanceState);
> >         Log.i("onCreate", " Start");
> >         setContentView(R.layout.main);
> >         myView= (TableLayout)findViewById(R.id.TableLayout01);
> >         myView.addView(new PaintView(this));
> >     }
>
> > }
>
> > public class PaintView extends View implements OnTouchListener {
>
> >         private float _x, _y;
> >         private int _taille;
> >         private Canvas _myCanvas;
> >         private Paint _paint = new Paint(Paint.ANTI_ALIAS_FLAG);
> >         public PaintView(Context context){
> >                 super(context);
> >                 Log.i("Info", "_paintview Constructor 1");
> >                 //this.setFocusableInTouchMode(true);
> >                 _x=20;
> >                 _y=20;
> >                 _taille = 10;
> >                 _paint.setColor(Color.RED);
> >         }
>
> >         public PaintView(Context parent, float x, float y, int i) {
> >                 super(parent);
> >                 Log.i("Info", "_paintview Constructor");
> >                 _x=x; _y=y; _taille = i;
> >                 _paint.setColor(Color.RED);
>
> >         }
>
> >         @Override
> >         protected void onDraw(Canvas canvas) {
> >                 Log.i("Info ","onDraw start");
> >                 try{
> >                         // make the entire canvas white
> >                         canvas.drawColor(Color.WHITE);
>
> >                         canvas.drawCircle(_x, _y, _taille, _paint);
> >                         super.onDraw(canvas);
>
> >                         Log.i("Info ","x="+_x+" y="+_y);
> >                         _myCanvas=canvas;
> >                 }
> >                 catch(Exception e)
> >                 {
> >                         Log.i("ERROR", "onDraw : " + e.getMessage());
> >                 }
> >         }
>
> >         public void translate(float x, float y){
> >                 try{
> >                         _x=x;
> >                         _y=y;
> >                         this.draw(_myCanvas);
> >                 }
> >                 catch (Exception e){
> >                         Log.i("ERROR", " "+e.getMessage());
> >                 }
> >         }
>
> >         @Override
> >         public boolean onTouchEvent(MotionEvent evt){
> >                 translate(evt.getX(), evt.getY());
> >                 return true;
> >         }
>
> >         @Override
> >         public booleanonTouch(View v, MotionEvent evt) {
> >                 translate(evt.getX(), evt.getY());
> >                 return false;
> >         }
>
> > }

--~--~---------~--~----~------------~-------~--~----~
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