我刚刚为我的商店系统写了一些代码,但一条非常简单的代码行不通:
...
if (dir == "left" && rect.anchoredPosition.x != -217.5f) {...}
...
如果锚定 position.x 为 -217.5,{} 中的代码仍会运行。但是下面有几行是这样的:
...
else if(rect.anchoredPosition.x != 217.5f)
...
效果很好!
后来我把第一行改成:
if (dir == "left")
{
if (rect.anchoredPosition.x != -217.5f)
{
...
}
}
...
效果很好,正如预期的那样。
我检查了几次固定位置,所以这不是它的错。我知道 dir 是“左”所以一个是真的,但是锚定的是 -217.5 所以它应该返回 false.
我不知道它为什么这样做。最后没关系,因为两个 if 语句 分开它有效,但我仍然想了解为什么。
谢谢