将Swift函数转换为Objective-C SubstringToIndex

时间:2016-06-30 09:42:54

标签: objective-c swift bluetooth substring character

下面的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))
    }
}

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长度范围,它就会崩溃。