我正在制作一个具有自定义视口Rect的应用程序,如下所示:
当我使用c#中的以下功能检查该视口的大小(以像素为单位)时:Camera.pixelHeight; Camera.pixelWidth
,我得到以下值:743px,770px。
这看起来是正确的。 现在,当我在编辑器中检查画布时,我会看到以下宽度和高度值。.请参见下面的img
不,我有一个脚本可以获取Canvas的宽度和高度。这是正确的,我再次获得了743px和770px。但是,当我将UI元素放置在外面时,因为该位置返回了Canvas Rect Transform属性中显示的错误值。
修改:
也许这与我如何定位元素有关。我通过以下atm方法进行操作:
sl.position = new Vector3(200, -200, 0);
此位置应相对于此元素在“画布”中的锚点。
这是怎么回事,它如何使画布使用正确的值?