下面的 swift 函数隐藏了在蓝牙设备显示器上按下的键,我试图在 Objective-C 中编写这个函数,但是我正在努力编写 characters.count & substringToIndex 如下所示在 Objective-C 中,谁能帮我把它转换成 Objective-C?
var msg = ""
func captin(leader: CaptinShip!, keyPressed keyCode: UInt) {
print(String(format: "keyPressed: %d (0x%02X)", keyCode, keyCode))
if keyCode == 0 {
msg += "*"
}
if keyCode == 13 && msg.characters.count > 0 {
msg = msg.substringToIndex(msg.endIndex.advancedBy(-1))
}
}
最佳答案
我假设您的 msg
将是一个 NSString
对象。如果是这样,应该这样做:
if (keyCode == 0) {
msg = [msg stringByAppendingString:@"*"];
}
if (keyCode == 13 && [msg length] > 0) {
msg = [msg substringToIndex:[msg length] - 2];
}
但是您可能会考虑对 msg
的长度创建另一个检查,因为如果 [msg length] - 2
超出 的范围,它将崩溃>msg
长度。
关于objective-c - 将 Swift 函数转换为 Objective-C SubstringToIndex,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38119406/