Android中奇怪的圆角矩形

时间:2010-11-02 20:53:22

标签: android drawing

我正在使用以下方法在我的Android应用程序中绘制圆角矩形,它似乎工作正常,但有一个小问题:

//  Draw the control buttons
paint.setColor      (Color.DKGRAY);
paint.setStyle      (Style.FILL);
canvas.drawRoundRect    (zPlusRectF,  12, 12, paint);
canvas.drawRoundRect    (zMinusRectF, 12, 12, paint);

paint.setColor      (Color.LTGRAY);
paint.setStyle      (Style.STROKE);
canvas.drawRoundRect    (zPlusRectF,  12, 12, paint);
canvas.drawRoundRect    (zMinusRectF, 12, 12, paint);

paint.setColor      (Color.WHITE);
paint.setStyle      (Style.FILL);
paint.setTextSize   (BUTTON_TEXT_SIZE);

... (Adding labels to the rectF's defined above follows) ...

奇怪的是矩形的两端不是圆形的。左侧的四分之一圆圈明显小于右侧的圆圈。

有人经历过类似的事吗?奇怪的是,如果我对它无能为力,我可能会改变我对圆角的想法......如果我知道如何从我的Android中进行屏幕捕获,我会的。

谢谢, R上。

编辑:有问题的矩形是78像素宽,48高,如果这有帮助(因为ykatchou可能是某些东西)。

2 个答案:

答案 0 :(得分:0)

可能是像素计数问题? 由于“抗锯齿”,我的意思是一个圆形的问题。

可能出于目的,但也许您可以考虑使用面板的边界半径。

答案 1 :(得分:0)

问题证明是抗锯齿的功能。当您在Android中绘制2D图形时(也可能在其他地方也是如此),以及适用于我的经验法则是:

为曲线和文本打开消除锯齿功能,但在直线上打开消除锯齿。

一旦我注意到在绘图方法中管理抗锯齿状态,这个问题就解决了。