我有三個不同的文本框,其中我需要使用3個不同的「textViewDidChange」方法。將它們組合在一個功能中對我來說並不合適我是三種不同的行爲,可能會相互影響。所以我試圖做出三個不同的功能如下。但是我得到了「無效的重新聲明」錯誤。我怎麼弄出來的?「textViewDidChange」無效的重新聲明Swift
func textViewDidChange(messageTxt1: UITextView) {
var len = count(messageTxt.text.utf16)
var diff = 90 - len
if diff < 0 {
charsLbl.textColor = UIColor.redColor()
} else {
charsLbl.textColor = UIColor.blackColor()
}
charsLbl.text = "\(diff) chars left"
}
func textViewDidChange (messageTxt2: UITextView) {
refreshResults()
var len2 = count(messageTxt2.text.utf16)
if len2 > 3 {
println("search")
}
else
{
resultsTable.hidden = true
}
var diff2 = 30 - len2
if diff2 < 0 {
charsLbl2.textColor = UIColor.redColor()
} else {
charsLbl2.textColor = UIColor.blackColor()
}
charsLbl2.text = "\(diff2) chars left"
}
func textViewDidChange (messageTxt3: UITextView) {
var len3 = count(messageTxt3.text.utf16)
var diff3 = 30 - len3
if diff3 < 0 {
charsLbl3.textColor = UIColor.redColor()
} else {
charsLbl3.textColor = UIColor.blackColor()
}
charsLbl3.text = "\(diff3) chars left"
}
爲什麼在可以直接比較對象時使用標記? 'messageTxt === textView1'完成你所期望的。 – Fantattitude
@Fantattitude你必須爲此保持參考。 – iDhaval
對我來說,保持引用更具有意義,它不太容易出錯,而不僅僅是使用帶有「魔術」數字的標籤。 – Fantattitude