我正在使用以下方法在我的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可能是某些东西)。
答案 0 :(得分:0)
可能是像素计数问题? 由于“抗锯齿”,我的意思是一个圆形的问题。
可能出于目的,但也许您可以考虑使用面板的边界半径。
答案 1 :(得分:0)
问题证明是抗锯齿的功能。当您在Android中绘制2D图形时(也可能在其他地方也是如此),以及适用于我的经验法则是:
为曲线和文本打开消除锯齿功能,但在直线上打开消除锯齿。
一旦我注意到在绘图方法中管理抗锯齿状态,这个问题就解决了。