公司有老的項目是原生的oc寫的代碼播演,新的需求頁面想要用flutter來寫偶翅,那么如何在原生項目里加入flutter呢讶坯?
1宣鄙、首頁新建一個OC的原生工程項目袍镀。該項目是個簡單的project的,只有一個頁面和一個按鈕冻晤,點擊按鈕present到flutter頁面苇羡。如圖
2、創(chuàng)建一個flutter的Module項目鼻弧,用來寫flutter頁面的设江。這里的module命名為flutter_oc_module。
3攘轩、接下來要在原生的oc工程中引入cocoapod來做管理叉存。
// Podfile的內(nèi)容
flutter_application_path = '../flutter_oc_module'
load File.join(flutter_application_path, '.ios', 'Flutter', 'podhelper.rb')
platform :ios, '9.0'
target 'FlutterWithOC' do
install_all_flutter_pods(flutter_application_path)
use_frameworks!
end
4、執(zhí)行pod install 就可以把創(chuàng)建的flutter module和原生的oc項目關聯(lián)起來了度帮。
到此歼捏,oc原生項目就和flutter module關聯(lián)起來了。那么怎么才能在一個原生頁面點擊跳轉(zhuǎn)到flutter頁面呢够傍?
在iOS原生的ViewController里有個按鈕甫菠,點擊跳轉(zhuǎn)到flutter頁面,我們只要在按鈕事件中創(chuàng)建一個FlutterViewController冕屯,然后push過去就可以了寂诱,灰常的簡單。show code:
注意安聘,這里flutter頁面的樣式內(nèi)容用的是創(chuàng)建module的時候痰洒,自帶的頁面,沒有更改浴韭。當然也可以在flutter module里更改樣式丘喻,顯示你自己的頁面。