簡體   English   中英

表達式解析為未使用的I值

[英]Expression resolves to unused I Value

我是Swift的新手,我正在嘗試更改按鈕的背景顏色。

我正在使用chicken1來一起更改按鈕的背景顏色

但我一直收到這個錯誤

表達式解析為未使用的I值“

這是當前的代碼。

let chicken1 = button1; button2
chicken1.backgroundColor = UIColor.blueColor()

我也應該使用'var'insted嗎?

AFAIK,這不可能像你想要的那樣。

一種選擇是遍歷所有按鈕並更改循環中的背景顏色。

for button in [button1, button2]{
    button.backgroundColor = UIColor.blueColor()
}

你得到這個錯誤的原因是因為這一行

let chicken1 = button1; button2

是相同的

let chicken1 = button1
button2 //this value isn't used

斯威夫特實際上並不需要; 像在其他語言中一樣在一行的末尾。 通過添加; ,你告訴Swift你想在一行上有多個表達式。

第二行沒有任何事情,因為沒有函數調用而沒有賦值,所以就像你想獲得 button2的值但你不使用它。

由於Arc676提到注釋,您無法為單個變量分配多個值。

因此,實現這一目標的第一種方法是您可以單獨設置背景顏色,如下所示:

button1.backgroundColor = UIColor.blueColor()
button2.backgroundColor = UIColor.blueColor()

或者如果你有按鈕數組:

let chicken1 = [button1, button2]
for item in chicken1 {

    item.backgroundColor = UIColor.blueColor()
}

對於Swift 3 Xcode 8,請使用以下代碼

button1.backgroundColor = UIColor.blue
button2.backgroundColor = UIColor.blue

或者如果你有按鈕數組:

let chicken1 = [button1, button2]
for item in chicken1 {
    item.backgroundColor = UIColor.blue
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM