I'm using the OSMdroid. My goal is adding and drawing items one by one in asychronous way on the overlay. So I'm looking for any way to customized overlay to achive such effect. Any suggestion how to implement overlay?
You can not draw asynchronously - all drawing must be done on the main thread. This is a pretty universal rule for all graphical drawing environments. What you probably want to do is load and create drawing items on a background thread and then pass them to the main thread where they can be drawn during the regular draw cycle.
The android class AsyncTask is designed just for things like this. You will want to load and create the drawing objects in doInBackground() which is run on a background thread and won't lock your GUI. Then you will want to load the drawing objects into the ItemizedIconOverlay in onPostExecute() which runs on the main thread and will also ensure synchronization with the list of drawing objects in ItemizedIconOverlay.