下面的swift功能隐藏了在蓝牙设备显示屏上按下的按键,我正在尝试在Objective-C中编写此功能,但是我很难写出字符.cn& 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))
}
}
答案 0 :(得分:2)
我假设您的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
长度范围,它就会崩溃。