簡體   English   中英

如何在Android的畫布上繪制小矩形?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM