Junior
Mis on Canvas Androidis?
sobes.tech AI
Vastus AI-lt
Canvas Androidis on pinnav surface joonistamiseks. See on objekt, mis pakub meetodeid graafiliste primitiivide (punktide, joonte, ristkülikute, ringide, teksti, piltide) joonistamiseks bitkaardile (Bitmap) või muule pinnale.
Põhikonseptsioonid:
- Joonistamine:
Canvaspakub API-d joonistustegevuste teostamiseks, nagudrawPoint(),drawLine(),drawRect(),drawCircle(),drawText(),drawBitmap(). - Koordinaatsüsteem: Kasutab kahe mõõtmelise koordinaatsüsteemi, kus punkt (0,0) asub ülemises vasakus nurgas.
- Seisund:
Canvasomab seisundit, mis hõlmab praeguseid teisendusi (nihutamine, skaleerimine, pööramine) ja lõikekohast (clip region), mida saab salvestada ja taastada (save()jarestore()). - Paint: Objekti
Paintkasutatakse joonistamisstiili määratlemiseks, nagu värv, joone paksus, varjutus, fondid jms.Canvaskasutab iga joonistustoiminguga praegustPaint-i.
Näide kasutusest kohandatud View-s:
// `onDraw()` meetodi sees
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
// Loo `Paint` objekt
Paint paint = new Paint();
paint.setColor(Color.RED); // Määra värv
// Joonista ristkülik
canvas.drawRect(10, 10, 100, 100, paint);
// Joonista ring
paint.setColor(Color.BLUE);
canvas.drawCircle(150, 150, 50, paint);
// Määra tekst
paint.setColor(Color.BLACK);
paint.setTextSize(30);
canvas.drawText("Hello, Canvas!", 10, 200, paint);
}
Canvas on tihedalt seotud View objektidega. Kui süsteem joonistab View-i, loob ta Canvas objekti ja edastab selle onDraw() meetodile View-i sees. Seejärel kasutab View seda Canvas-i oma sisu joonistamiseks.