ajouter l'image à la surface de la vue dans android

Je veux ajouter l'image à la Surface d'affichage. J'ai donc utilisé le code ci-dessous

public class MySurfaceView extends SurfaceView implements SurfaceHolder.Callback{

     Bitmap myicon;
     Canvas canvas;
     private Paint   mBitmapPaint;

     Paint p= new Paint();


       @Override
        protected void onDraw(Canvas canvas) {
           Bitmap myicon=BitmapFactory.decodeResource(getResources(),R.drawable.icon);
           canvas.drawColor(Color.BLACK);
           canvas.drawBitmap(myicon, 0,0, p);
           //canvas.drawBitmap(myicon, 0,0, null);
           //canvas.drawBitmap(myicon, 25,25, null);
       }
        public MySurfaceView(Context context) {
            super(context);
            //TODO Auto-generated constructor stub
        }

        public void surfaceChanged(SurfaceHolder arg0, int arg1, int arg2, int arg3) {
            //TODO Auto-generated method stub

        }

        public void surfaceCreated(SurfaceHolder holder) {
            //TODO Auto-generated method stub

        }

        public void surfaceDestroyed(SurfaceHolder arg0) {
            //TODO Auto-generated method stub

        }
    }

Mais il affiche un écran noir. Je n'ai pas ce que j'ai fait de mal dans le code ci-dessus.

Veuillez résoudre le problème

Merci d'avance.

montrez comment vous avez ajouté surface d'affichage de la fenêtre
MySurfaceView mysurfaceview = newMySurfaceView(ce); setContentView(mysurfaceview); en activité principale
checkout mon exemple de travail et aussi le lien que j'ai fourni.

OriginalL'auteur Ramakrishna | 2011-10-12