在viewDidLoad中()我有:夫特4:類型的NSString的值沒有任何構件 '計數'
let text = textField.text! as NSString
doneButton.isEnabled = (text.count > 0)
我得到錯誤:
類型的值的NSString沒有成員「計數'
我不明白,因爲之前迅速4它是characters.count,現在在其迅速4它直接宣佈.count,我得到這個錯誤。
有人嗎?
在此先感謝您的幫助
在viewDidLoad中()我有:夫特4:類型的NSString的值沒有任何構件 '計數'
let text = textField.text! as NSString
doneButton.isEnabled = (text.count > 0)
我得到錯誤:
類型的值的NSString沒有成員「計數'
我不明白,因爲之前迅速4它是characters.count,現在在其迅速4它直接宣佈.count,我得到這個錯誤。
有人嗎?
在此先感謝您的幫助
首先,除非編譯器會告訴你不要在斯威夫特使用NSString
。
其次所有專用方法以檢查是否存在空字符串是isEmpty
let text = textField.text!
doneButton.isEnabled = !text.isEmpty
但是 - 由利奧Dabus指出的 - 有一個更聰明的方式(可用的iOS 10+)
doneButton.isEnabled = textField.hasText
let text = textField.text! as String
if(text)
{
print(text.count)
}
這是不好的,易崩潰的,不安全的swift代碼。如果'textField.text!'是'nil',應用程序會崩潰。使用if-let語句:'if let text = textField.text as?字符串{print(text.count)}' – Hexfire
的NSString沒有財產計數,請使用長度
print(text.length)
'NSString'有'length' ...(_violá:_ __ [類參考](https://developer.apple.com/documentation/foundation/nsstring)__在Apple Docs中)或直接在Swift中使用'String'並且'characters.count'仍然存在。 – holex
您不需要在此處將文本投射到NSString。使用直接rext作爲String並使用count方法。 – dip
感謝你們的幫助;) – Julien