gpt4 book ai didi

ios - 使用 UIKeyCommand 检测删除键

转载 作者:技术小花猫 更新时间:2023-10-29 10:42:30 28 4
gpt4 key购买 nike

有人知道如何在 iOS 7 上使用 UIKeyCommand 检测“删除”键吗?

最佳答案

由于人们在使用 Swift 时遇到问题,我想用 Objective C 和 Swift 的一个小而完整的例子可能是一个很好的答案。

请注意,Swift 没有用于退格的 \b 转义字符,因此您需要使用 \u{8} 的简单 Unicode 标量值转义序列.这映射到同一个老派 ASCII control character数字 8(“control-H”,或 caret notation 中的 ^H)用于退格,就像 Objective C 中的 \b 一样。

这是一个捕获退格键的 Objective C View Controller 实现:

#import "ViewController.h"

@implementation ViewController

// The View Controller must be able to become a first responder to register
// key presses.
- (BOOL)canBecomeFirstResponder {
return YES;
}

- (NSArray *)keyCommands {
return @[
[UIKeyCommand keyCommandWithInput:@"\b" modifierFlags:0 action:@selector(backspacePressed)]
];
}

- (void)backspacePressed {
NSLog(@"Backspace key was pressed");
}

@end

这是 Swift 中等效的 View Controller :

import UIKit

class ViewController: UIViewController {

override var canBecomeFirstResponder: Bool {
return true;
}

override var keyCommands: [UIKeyCommand]? {
return [
UIKeyCommand(input: "\u{8}", modifierFlags: [], action: #selector(backspacePressed))
]
}

@objc func backspacePressed() {
NSLog("Backspace key was pressed")
}

}

关于ios - 使用 UIKeyCommand 检测删除键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22068308/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com