Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/117.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 带swift的布尔_Ios_Swift - Fatal编程技术网

Ios 带swift的布尔

Ios 带swift的布尔,ios,swift,Ios,Swift,这真令人困惑。有人有什么想法吗 let viewHasMovedToRight == false //initially I want this to be false 然后 如果调用,则只调用第一个。 我无法将该值重新分配回true 现在使用swift在Obj-C上如此简单的事情是如此令人沮丧…让viewHasMovedToRight=false而不是让viewHasMovedToRight==false 编辑:看起来您在设置布尔值的任何地方都使用了=而不是= @George, 您应该使用s

这真令人困惑。有人有什么想法吗

let viewHasMovedToRight == false //initially I want this to be false
然后

如果调用,则只调用第一个
。
我无法将该值重新分配回true


现在使用swift在Obj-C上如此简单的事情是如此令人沮丧…

让viewHasMovedToRight=false
而不是
让viewHasMovedToRight==false

编辑:看起来您在设置布尔值的任何地方都使用了
=
而不是
=

@George, 您应该使用set运算符

let viewHasMovedToRight = false
非比较运算符

let viewHasMovedToRight == false
你有两个问题

第一,您使用的是
==
(用于测试相等性),而您应该使用
=
(用于赋值)。第二,您正在声明一个常量,然后稍后尝试为其分配一个新值。您需要声明一个变量

var viewHasMovedToRight = false

...
    viewHasMovedToRight = true
此外,大多数人会发现这种情况更容易理解:

if !viewHasMovedToRight {
如果您将
if
子句的顺序颠倒,则会更简单:

if viewHasMovedToRight {
    viewHasMovedToRight = false
    ...
} else {
    viewHasMovedToRight = true
    ...
}
我是新手。 我过去总是犯这个错误,用=表示赋值和比较。
使用=分配和==比较

当我这样做时,我得到的错误不能分配到'self'@GeorgeAsda中的“”,使用
=
设置
Bool
。使用
==
测试
Bool
的状态。如果要处理常量,请使用
let
,如果变量的值可以更改(显然是这样),请使用
var
if viewHasMovedToRight {
    viewHasMovedToRight = false
    ...
} else {
    viewHasMovedToRight = true
    ...
}