xcode – 如何以编程方式将功能键设置为等效键

前端之家收集整理的这篇文章主要介绍了xcode – 如何以编程方式将功能键设置为等效键前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
来自NSMenuItem类参考

如果要将Backspace键指定为菜单项的等效键,请使用带有NSBackspaceCharacter的单个字符串(在NSText.h中定义为0x08),对于Forw​​ard Delete键,使用NSDeleteCharacter(在NSText.h中定义为0x7F) ).

我不确定我从类ref中理解“使用带有…的单个字符串”.

//这按预期工作

NSString *s = [NSString stringWithFormat:@"%c",NSDeleteCharacter];

    [myMenuItem setKeyEquivalentModifierMask:NSCommandKeyMask];

    [myMenuItem setKeyEquivalent:s];

//这不会按预期工作

NSString *s = [NSString stringWithFormat:@"%c",NSF2FunctionKey];

    [myMenuItem setKeyEquivalentModifierMask:NSCommandKeyMask];

    [myMenuItem setKeyEquivalent:s];

解决方法

Swift 2.0的示例:

let key = String(utf16CodeUnits: [unichar(NSBackspaceCharacter)],count: 1) as String
menuItem.keyEquivalentModifierMask = Int(NSEventModifierFlags.CommandKeyMask.rawValue)
menuItem.keyEquivalent = key

猜你在找的Xcode相关文章