检查NSTextfield是否为空OSX swift
当用户未向NSTextfield输入值时,我使用代码设置值,如果textfield中有值,则在else之后不会继续 这里有一个例子检查NSTextfield是否为空OSX swift,swift,macos,nstextfield,Swift,Macos,Nstextfield,当用户未向NSTextfield输入值时,我使用代码设置值,如果textfield中有值,则在else之后不会继续 这里有一个例子 func calculateAmountPanels(){ let fpanelsHigh = Float(panelsHigh) let fpanelsWidth = Float(panelsWidth) if panelsHighTextField != nil && panelsWideTextField != n
func calculateAmountPanels(){
let fpanelsHigh = Float(panelsHigh)
let fpanelsWidth = Float(panelsWidth)
if panelsHighTextField != nil && panelsWideTextField != nil {
resHightLabel.stringValue = "N/A"
resWidthLabel.stringValue = "N/A"
lblScreenHight.stringValue = "N/A"
lblScreenWidth.stringValue = "N/A"
lblScreenArea.stringValue = "N/A"
lblAmountPanels.stringValue = "N/A"
}
else {
ammountPanels = (fpanelsWidth! * fpanelsHigh!)
printText()
}
}
由于OSX编码似乎与ios不同,因此请提供一些建议。您必须检查NSTextField的stringValue,例如:
panelsHighTextField.stringValue != nil
如前所述,您还应该测试
panelsHighTextField.stringValue.characters.count是否高于0。我将添加此扩展名:
extension NSTextField {
func setStringValueIfEmpty(newValue: String) {
if self.stringValue == nil || self.stringValue.isEmpty {
self.stringValue = newValue;
}
}
}
并在字段中调用它,如下所示:
resHightLabel.setStringValueIfEmpty("N/A")
你到底在问什么?我想检查textfield是否为空,如果为空,则在difrent标签中返回“N/A”。你肯定还想测试一个空字符串。