У меня есть приложение, которое я разрабатываю во Flutter, и у него есть один UIViewController, который должен быть реализован в собственном IOS (другого обходного пути нет, это необходимо)
Я реализовал это, оно работаетв соответствии с первыми тестами, но я бы хотел еще раз проверить, насколько это хорошо, по вашему мнению, поскольку я не настолько опытен во Flutter, и я боюсь немного сделать некоторый беспорядок в моем стеке навигации приложений, чтоможет вызвать ошибки в будущем .
Итак, я реализовал это с помощью MethodChannel.У меня есть метод, который вызывается со стороны флаттера.Я не вставляю свои вещи, связанные с MethodChannel, здесь, потому что они тривиальны.
В моем AppDelegate didFinishLaunchingWithOptions я добавил это:
let flutterViewController = FlutterViewController()
self.navigationController = UINavigationController(rootViewController: flutterViewController)
self.navigationController?.isNavigationBarHidden = true
self.window = UIWindow(frame: UIScreen.main.bounds)
self.window.rootViewController = self.navigationController
self.window.makeKeyAndVisible()
И мой метод open выглядит так:
private func openNativeUI(result: FlutterResult) {
let sb = UIStoryboard(name: "Main", bundle: nil)
let uiController = sb.instantiateViewController(withIdentifier: "nativeui")
self.navigationController?.pushViewController(uiController, animated: true)
result(true)
}
Что вы думаете?
Любой совет очень ценится и заранее благодарим за помощь!