1.创建flutter module
进入iOS工程根目次的上一级,创建flutter module工程
- flutter create --template module fluttermodule
复制代码 2.进入iOS工程根目次,编辑podfile文件
- flutter_application_path = '../fluttermodule'
- load File.join(flutter_application_path, '.ios', 'Flutter', 'podhelper.rb')
- target "iOSDemo" do
- use_frameworks!
- install_all_flutter_pods(flutter_application_path)
- end
- post_install do |installer|
- flutter_post_install(installer) if defined?(flutter_post_install)
- end
复制代码 实行pod install
3.iOS调用Flutter
在AppDelegate注册FlutterEngine
- import UIKit
- import Flutter
- import FlutterPluginRegistrant
- @main
- class AppDelegate: UIResponder, UIApplicationDelegate {
- lazy var flutterEngine = FlutterEngine(name: "my flutter engine")
- func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
- // Override point for customization after application launch.
- GeneratedPluginRegistrant.register(with: self.flutterEngine);
- flutterEngine.run()
- return true
- }
- }
复制代码 利用 FlutterEngine调用utterViewController
- import UIKit
- import Flutter
- class ViewController: UIViewController {
- override func viewDidLoad() {
- super.viewDidLoad()
- // Make a button to call the showFlutter function when pressed.
- let button = UIButton(type:UIButton.ButtonType.custom)
- button.addTarget(self, action: #selector(showFlutter), for: .touchUpInside)
- button.setTitle("Show Flutter!", for: UIControl.State.normal)
- button.frame = CGRect(x: 80.0, y: 210.0, width: 160.0, height: 40.0)
- button.backgroundColor = UIColor.blue
- self.view.addSubview(button)
- }
- @objc func showFlutter() {
- let flutterEngine = (UIApplication.shared.delegate as! AppDelegate).flutterEngine
- let flutterViewController =
- FlutterViewController(engine: flutterEngine, nibName: nil, bundle: nil)
- present(flutterViewController, animated: true, completion: nil)
- }
- }
复制代码 参考链接
https://www.jianshu.com/p/aac1f387f3c0
https://www.jianshu.com/p/c3e5e210a585
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |