Thanks for the reply, Dianne. I wished I had got your answer before I
made further changes earlier - I draw the drawings onto another image
buffer and copy the image buffer back to the real image view. (This is
what I learned before that it could make the drawing smooth so that
there is no flicker like you said.) It turned out to be useless
anyway.
Like you said - Android's drawing will not draw until the drawing is
complete. What I want is to draw is the moving of the tower of hanoi
in a step by step way so that the users could see the moving - not the
end of the moving.

I see that Android has some animation mechanism. I wonder if I could
start an animation thread, then uses the images that I draw as an
animation source for the animation. Theoretically, it should work.
But, I hate that I might find out that it's not what I think.
I believe that I can associate a view with an animation. Then, I could
start an animation that plays the images I create one by one. That
probably will work. But, I am new to Android, so I have no idea about
Android animation at this moment.
Thanks anyway.

On May 17, 10:27 am, Dianne Hackborn <[email protected]> wrote:
> Android's drawing model is totally different, so it can provide a smoother
> experience without flicker.  When drawing your window, you need to
> completely draw it and the result is not composited to the screen until all
> drawing is complete, so the user never seen flicker and artifacts due to
> partially drawn windows on screen.
>
> You just need to learn how Android works.  Yes, it does not use AWT, so you
> just need to learn the way that Android does drawing just like if you were
> coming from any other platform.
>
>
>
>
>
> On Tue, May 17, 2011 at 1:11 AM, Heuristic <[email protected]> wrote:
> > I write an Android Java program to "simulate" the moving of Tower of
> > Hanoi.
> > The drawing does not show in steps I expected, instead it shows in a
> > chunk at the end of the drawing. Why?
> > The scenario can been seen in my personal website -
> > 1. I set the disc number to be 5.
> >http://homepage8.seed.net.tw/web@3/heuristic/TOH_Set051411001.JPG
> > 2. Then, I start the moving. (I used the sleep timer so that it won't
> > move too fast.)
> >http://homepage8.seed.net.tw/web@3/heuristic/TOH_Start051411001.JPG
> > 3. It ends up with the BLACK piles of the discs on the two other
> > sticks as shown on the following URL:
> >http://homepage8.seed.net.tw/web@3/heuristic/TOH_End051411001.JPG
> > (This is due to an error in my program. It's fixed.)
>
> > The button "start" is used to trigger the movement. I can see that the
> > button's color is changed and hold there until all the drawings are
> > done, then the color of the button is reset to original. This is not
> > what I want. I want to show - moving the disc 1 from stick 1 to stick
> > 2, then moving the disc 2 from stick 1 to stick 3, and so on. It does
> > not show this - it shows the last step that finishes the tower of
> > hanoi movement.
>
> > I wrote this Java program long time ago using Java Applet (and it
> > works as an application with little modification). The library used to
> > draw is AWT only. Now, I just changed the interface to be Android GUI/
> > API interface.
> > The old program works fine on my website (in fact, in my all
> > showoffs.) -
> >http://homepage8.seed.net.tw/web@3/heuristic/tohjava.html
>
> > This program was developed on Android 2.1-updated. I just ported to
> > 3.0, it shows the first time, then halts there. I haven't got time to
> > figure out.
>
> > This is a very good educational material - to teach Math, Java,
> > Computer Sciences, etc.
> > Hope experienced Android guy can share experience here. This is a
> > little bit like the "flush" in some i/o problem. Sometimes, if you
> > don't flush, there is no output. So, why Android does not show the
> > drawing out right away, instead it waits until the end of all the
> > drawings.
> > It looks like that using threads could solve the problem. But, it's
> > too much of the work for just drawing some object movings. Anyone has
> > any idea how to make the programming simpler and easier for a simple
> > task like this?
>
> > How come Android not provide the AWT library? Is it too big or too
> > clumsy? It's just some simple drawings, why do you want your
> > developers to write so many codes for a simple task like this?
> > Is there a way that the displaying view (view to show the images)
> > sends a message to the button and asks the button to release the
> > control to the view so that the view can draw the drawings as it
> > should do. I think it's the button control holds the operation until
> > the called routine exits. Painting or drawing  should be independent
> > of the processes that activate the painting or drawing like AWT,
> > right?
> > Any idea?
>
> > --
> > You received this message because you are subscribed to the Google
> > Groups "Android Developers" group.
> > To post to this group, send email to [email protected]
> > To unsubscribe from this group, send email to
> > [email protected]
> > For more options, visit this group at
> >http://groups.google.com/group/android-developers?hl=en
>
> --
> Dianne Hackborn
> Android framework engineer
> [email protected]
>
> Note: please don't send private questions to me, as I don't have time to
> provide private support, and so won't reply to such e-mails.  All such
> questions should be posted on public forums, where I and others can see and
> answer them.- Hide quoted text -
>
> - Show quoted text -

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

Reply via email to