C# Can';t设置正确的x和y值

C# Can';t设置正确的x和y值,c#,unity3d,C#,Unity3d,我有坐标x和y的数组 x = new int[18]; y = new int[15]; x[0] = -404; y[0] = -226; for (int i = 1; i < 18; i++) x[i] = x[i - 1] + 30; for (int i = 1; i < 15; i++) y[i] = y[i - 1] + 30; 我需要设置新的坐标。例如,x=24,y=50 苹果不在绿色区域: 使用属性而不是transform.position,如下所

我有坐标x和y的数组

x = new int[18];
y = new int[15];
x[0] = -404;
y[0] = -226;
for (int i = 1; i < 18; i++)
    x[i] = x[i - 1] + 30;
for (int i = 1; i < 15; i++)
    y[i] = y[i - 1] + 30;
我需要设置新的坐标。例如,x=24,y=50

苹果不在绿色区域: 使用属性而不是transform.position,如下所示

RectTransform rectTransform = GetComponent<RectTransform>();
rectTransform.anchoredPosition = new Vector2(xCor, yCor);
RectTransform RectTransform=GetComponent();
rectTransform.anchoredPosition=新向量2(xCor,yCor);
您使用的画布游戏对象没有普通的转换组件。

使用属性而不是transform.position,如下所示

RectTransform rectTransform = GetComponent<RectTransform>();
rectTransform.anchoredPosition = new Vector2(xCor, yCor);
RectTransform RectTransform=GetComponent();
rectTransform.anchoredPosition=新向量2(xCor,yCor);

您使用的是一个没有法线变换组件的canvas游戏对象。

当您说坐标不正确是什么意思?@code11它们超出了数组值,有时不是整数(浮点数),似乎与对象的局部空间有关。绿色网格的变换矩阵等于苹果的变换矩阵吗?你说坐标不正确是什么意思?@code11它们超出了数组值,有时不是整数(浮点数),似乎与对象的局部空间有关。绿色网格的变换矩阵等于苹果的变换矩阵吗?这很有帮助。谢谢。这很有帮助。谢谢。