我想在Android中绘制五个矩形条。我有整数,但现在我希望它们有点间隔。
我希望它们在底部对齐,并且它们之间的距离相同。
for (int i= 0; i<4; i++) {
int ce = heigth[i];
Paint rectanglePaint = new Paint();
rectanglePaint.setARGB(255, 0, 0, 0);
rectanglePaint.setStrokeWidth(2);
rectanglePaint.setColor(Color.BLUE);
rectanglePaint.setStyle(Style.STROKE);
Rect rectangle = new Rect(35+10*ce, 150, 10, 10*ce); //in pixels
//rectangle.offset(50, 50);
rectangle.offsetTo(55+10*ce, 150);
//canvas.translate(10, 0);
canvas.drawRect(rectangle, rectanglePaint);
我尝试过offset,offsetTo,translate,但无法找到使用它们的逻辑。我希望他们都可以从不同的位置开始,比如他们向右移动35次,并且都是30次倾斜。虽然我在左边加了35,但它们仍然来自同一个地方。
答案 0 :(得分:4)
也许height[i]
不会改变?
这应该创建四个10x10矩形,彼此分开35 px。顺便说一句,您不需要创建四个Paint对象。重复使用四个矩形以提高效率。
Paint rectanglePaint = new Paint();
rectanglePaint.setARGB(255, 0, 0, 0);
rectanglePaint.setStrokeWidth(2);
rectanglePaint.setColor(Color.BLUE);
rectanglePaint.setStyle(Style.STROKE);
for (int i= 0; i<4; i++) {
Rect rectangle = new Rect(35*i, 150, 35*i+10, 160);
canvas.drawRect(rectangle, rectanglePaint);
}