下面是我的代码。但是我怎么知道这个字符是否来自字母表?(任何字母,不仅仅是 az)
- (void)keyDown:(NSEvent *)theEvent
{
NSString * const character = [theEvent charactersIgnoringModifiers];
}
下面是我的代码。但是我怎么知道这个字符是否来自字母表?(任何字母,不仅仅是 az)
- (void)keyDown:(NSEvent *)theEvent
{
NSString * const character = [theEvent charactersIgnoringModifiers];
}
您可以使用NSCharacterSet
:
- (void)keyDown:(NSEvent *)theEvent
{
NSString * const character = [theEvent charactersIgnoringModifiers];
if ([character length] > 0)
{
unichar c = [character characterAtIndex:0];
NSCharacterSet *letters = [NSCharacterSet letterCharacterSet];
if ([letters characterIsMember:c])
{
NSLog(@"that's a letter!");
}
}
}
如果您经常调用此代码,则可能需要将其存储letters
为实例变量。