在Android中,如何为Rect提供X和Y位置?

Mic*_*ael 4 android rect

我试图在画布上绘制一个简单的Rect,它的X坐标为360,Y坐标为0.如果我将X坐标设为0,我可以绘制我的Rect,但是当我将它设为360时,正方形变得扭曲,变成矩形而不是正方形.我的屏幕尺寸是640px宽,所以这里应该没问题.我可以用相同的规格绘制位图,它会正常绘制.为什么Rects没有正确绘制?是不是以某种方式X坐标只在DP而不是PX?那为什么会影响Rect的实际大小?我真的很困惑.

            Rect square6 = new Rect();
            square6.set(360, 0, 60, 60);
Run Code Online (Sandbox Code Playgroud)

小智 6

你应该阅读Android中对Rect的引用,Rect的set func是public void set(int left,int top,int right,int bottom),你设置你的rect开始于(360,0)并结束于(60 ,60),你应该将parmas更改为(360,0,420,60).它会工作.