[英]How paint small rectangels on a canvas on Android?
我想在畫布上繪制小矩形。 問題在於矩形沒有任何邊界,因此結果只是一個大矩形(包含所有小矩形(如下所述的20x20矩形))。
在我的自定義View
,我重寫了onDraw:
protected void onDraw(Canvas canvas) {
Paint paint = new Paint();
paint.setColor(Color.WHITE);
canvas.drawRect(getWidth(), getHeight(), 50, 50, paint);
paint.setColor(Color.LTGRAY);
paint.setStrokeWidth(3);
for(int i = 0; i < 20; i++) {
for(int j = 0; j < 20; j++) {
canvas.drawRect(20*j, 20*i, 50, 50, paint);
}
}
}
對於Java Swing,您可以執行以下操作
g.setColor(Color.red);
for(int x = 0; x < 20; x++) {
for(int y = 0; y < 20; y++) {
g.drawRect(20 * x, 20 * y, 20, 20);
}
}
繪制矩形,每個矩形都有紅色邊框。
如何在Android上實現此目標?
我猜您需要在繪制小矩形之前將繪畫樣式更改為“描邊”。 將mPaint.setStyle(Paint.Style.STROKE)
與設置筆觸寬度一起使用。 在您的代碼中,您沒有在任何地方聲明繪畫風格。 如果使用Paint.Style.FILL
,它將填充矩形。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.