2011-05-08 2 views
2

salut je veux dessiner le chemin dans la toile mais il ne fait rien, il ne dessine pas la toile non plus.
mon code:comment dessiner le chemin dans la toile dans Android?

Path path = new Path(); 
Canvas canvas = new Canvas(); 

Paint paint = new Paint(); 
paint.setColor(Color.BLACK); 

canvas.drawColor(Color.CYAN); 

for (int i = 5; i < 50; i++) 
{ 
    path.setLastPoint(4, i - 1); 
    path.lineTo(4, i); 
} 
path.close(); 
for (int i = 0; i < 5; i++) 
{ 
    View iview = inflater.inflate(R.layout.linear_layout, null); 
    iview.findViewById(R.id.imageView1);//.setBackgroundColor(backgroundColors[i]); 

    ShapeDrawable mDrawable = new ShapeDrawable(new OvalShape()); 
    mDrawable.getPaint().setColor(Color.YELLOW); 
    mDrawable.setBounds(10, 10, 15, 15); 

    canvas.drawPath(path, paint); 
    mDrawable.draw(canvas); 

    iview.draw(canvas); 
    realViewSwitcher.addView(iview); 
} 

il me montre que la couleur verte qui est la valeur par défaut du view.backroundColor.

grâce

Répondre

8

Canvas est juste un "outil" pour le dessin sur une Bitmap. Vous devez les associer de la façon suivante:

Canvas canvas = new Canvas(someBitmap); 

Cependant, cela ne vous permet que de dessiner sur un bitmap. Si vous voulez dessiner dans la vue, vous devez le faire en onDraw(Canvas), en utilisant le Canvas qui vous est fourni, qui est déjà lié au bitmap qui est le dessin de la vue réelle.

Pour utiliser onDraw(), vous devez créer une vue personnalisée (c'est-à-dire s'étendre de View).

Ensuite, il y a SurfaceView mais c'est une autre chose (et je ne sais pas trop à ce sujet).

Questions connexes