React Native: добавьте сочетания клавиш в приложение iOS
Поэтому я пытался добавить сочетания клавиш в свое приложение React Native для iOS. Так что пользователи могут использовать внешнюю клавиатуру на iPad, чтобы воспользоваться этими сочетаниями клавиш.
Я создал AppDelegate.swift и RootViewController.swift для работы только с swift в моем приложении React Native. Пока что мое основное приложение запущено. Он также компилируется с кодом для KeyCommands, добавленным в RootViewController, но он не запускает действие при нажатии cmd + s или отображает доступные команды при нажатии и удерживании клавиши cmd на iPad.
AppDelegate.swift
import Foundation
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
var rootView: RootViewController = RootViewController()
self.window = UIWindow(frame: UIScreen.main.bounds)
var rootViewController = UIViewController()
rootViewController = rootView
self.window!.rootViewController = rootViewController;
self.window!.makeKeyAndVisible()
return true
}
}
RootViewController.swift
import Foundation
import UIKit
class RootViewController: UIViewController {
var bridge: RCTBridge!
override func viewDidLoad() {
super.viewDidLoad()
let jsCodeLocation = NSURL(string: "http://localhost:8081/index.bundle?platform=ios&dev=true")
let rootView = RCTRootView(bundleURL:jsCodeLocation as URL!, moduleName: "tinyWhaleApp", initialProperties: nil)
self.bridge = rootView?.bridge
self.view = rootView
}
override func becomeFirstResponder() -> Bool {
return true
}
override var keyCommands: [UIKeyCommand]? {
return [
UIKeyCommand(input: "s", modifierFlags: [.command], action: "saveFile:", discoverabilityTitle: "Save"),
]
}
func saveFile(sender: UIKeyCommand) {
print("saving file")
}
}
Если бы кто-то мог помочь мне получить сочетания клавиш, работающие на iPad с внешней клавиатурой, это было бы здорово.