如果我們目前的項目是Android的,但是接下來我們希望部分頁面可以使用Flutter進行開發,甚至我們希望在Native頁面中嵌入FlutterUI組件,那么我們該如何實現呢?

創新互聯基于成都重慶香港及美國等地區分布式IDC機房數據中心構建的電信大帶寬,聯通大帶寬,移動大帶寬,多線BGP大帶寬租用,是為眾多客戶提供專業服務器托管報價,主機托管價格性價比高,為金融證券行業成都多線服務器托管,ai人工智能服務器托管提供bgp線路100M獨享,G口帶寬及機柜租用的專業成都idc公司。
假設你現在Android項目的目錄的結構是這樣的
這時候如果你想創建一個Flutter模塊,使得Android模塊和Flutter模塊之間可以進行交互,我們可以通過Android Studio新建一個Flutter Module,具體過程是:File — New — New Module ,之后選擇Flutter Module,指定Project Location的路徑為
也就是說,最終你的項目結構會是這樣的
接下來在Android Module的 build.gradle 文件中添加flutter依賴
先創建一個Flutter頁面
這里比較重要的是 window.defaultRouteName 這個字段,這個字段可以接收從Native傳遞過來的參數 (下文我們會介紹原生傳遞參數的方法),也就是說通過這個字段我們就可以進行Flutter頁面的路由的分發
我們可以直接在Android的 MainActivity 中啟動一個 FlutterActivity ,這里的 initialRoute 方法中傳遞的參數就對應Flutter層的 window.defaultRouteName
注意:需要在 AndroidManifest.xml 注冊 FlutterActivity
自己創建一個 FlutterAppActivity 繼承自 FlutterActivity
在 MainActivity 中啟動 FlutterAppActivity (另外別忘了在 AndroidManifest.xml 中注冊 FlutterAppActivity )
兩種啟動方式的區別
如果單純只是想打開一個Flutter頁面,兩種方式實際上基本沒有太大區別,第一種方式也許還會更簡單一點。但是,在Flutter開發中,我們往往還需要開發一些Native插件供Flutter調用,如果使用復寫 FlutterActivity 的方式更有利于我們在 FlutterActivity 中注冊我們的Native插件,所以實際開發中一般推薦使用第二種方式
擴展思考
initialRoute 從名稱上看起來是Flutter提供給我們進行Native與Flutter交互的路由跳轉的,但是實際上他就是一個字符串,我們不僅僅可以傳遞一個路由名稱,有時候我們也可以通過這個參數傳遞一串JSON數據,然后在Flutter端進行解析,這樣我們就可以通過這個參數做更多的事情
activity_main.xml
FrameLayout 用于承載Flutter組件
MainActivity.java
使用 FragmentManager 將 FlutterFragment 添加到 FrameLayout 容器中
運行結果
上半部分是原生的TextView,下半部分是Flutter的Text組件
本節主要介紹了Native和Flutter之間的頁面跳轉,以及同一個頁面中Native與Flutter組件的組合。接下來會介紹如何編寫Android插件與Flutter進行數據交互
E: B、C、D、G、P、T、V。解析:E發音:[i?]。B、C、D、G、P、T、V發音都含有[i?]。
含有E的單詞:set、bet、flutter、each、every。
一、set
1、含義:v. 放置;設定;確定;規定;調整;分配;(太陽)落下去;將(寶石)鑲嵌到(某物);配樂;n. 集合;組合;日落;一套;一副;一局比賽;舞臺;姿態;頭發的定型;adj. 規定的;固定的;不變的;做好準備的;固執的;不自然的。
2、用法
set的基本意思是“放,擱”,指為了明確的目的而將某人或某物放在一個特定的位置或使其處于某種狀態。引申可指“使凝固,使變堅固”“確定,制定”“估計,評價”“調整,對準”“使某人〔某物〕開始做某事〔發生作用〕”“樹立,創造”“鑲嵌,點綴”“譜曲,設置”“排字”等。
How do we set the enrollment criteria?
我們如何設定錄取標準?
二、bet
1、含義:v. 打賭;確信無疑;n. 賭注;確信。
2、用法
bet的基本意思是“打賭”,指打賭的行為或動作。
bet的賓語可以是一個(所賭之物或打賭的對象),也可以是兩個(一個間接賓語,一個直接賓語),還可以是三個(一個間接賓語,兩個直接賓語),在形式上則可以是名詞、代詞,也可以是從句。
I bet they are making a pile out of the deal.
我肯定他們這筆生意一定賺大錢。
三、flutter
1、含義:n. 擺動;振翼;煩擾;vi. 擺動;振翼;煩擾;vt. 使心煩;使焦慮。
2、用法
直接源自古英語的floterian,意為來回飄動。
作動詞表示以類似鳥那樣的運動方式來移動。flutter強調不穩定性和顫動性。
The young bird fluttered its wings.
雛鳥拍打著它的翅膀。
四、each
1、含義:pron. 每個;個人;個自;adj. 每;每個;adv. 每個。
2、用法
each用作代詞時,在句中可作主語、賓語和同位語。
each用作主語時,常用于each of短語,如果each強調的是“個別”,謂語動詞與相關的物主代詞通常總用單數形式,但如果each強調的是“集體”或先行詞是復數或先行詞的主語是由兩個或兩個以上的單數名詞或兩個復數名詞組成時,謂語動詞和相關的物主代詞則用復數。
I asked all the children and each told a different story.
我問過所有的孩子,每個人的說法都不一樣。
五、every
1、含義:adj. 每個;一切的;所有可能的;每隔;最大的。
2、用法
every的基本意思是指組成整體的每個個體,但不把它看作具體的某一個,而是將其看作是全體成分的典型和代表。
every與抽象名詞連用,表示希望、機會、理由等“一切可能的”。
every一般修飾單數名詞,作主語時與動詞單數形式連用,在口語中可用人稱代詞和物主代詞的復數形式指代。
He received the fixed dole every month.
他每個月都能領到固定的救濟金。
由于 Flutter 不支持運行時反射,JSON 解析完全是手動的。
所謂手動解析,是指使用 dart:convert 庫中內置的 JSON 解碼器,將 JSON 字符串解析成自定義對象的過程。使用這種方式,我們需要先將 JSON 字符串傳遞給 JSON.decode 方法解析成一個 Map,然后把這個 Map 傳給自定義的類,進行相關屬性的賦值。
下面動手解析一個用戶的信息
首先,我們根據 JSON 結構定義 User類,并創建一個工廠類,來處理 User 類屬性成員與 JSON 字典對象的值之間的映射關系:
數據解析類創建好了,剩下的事情就相對簡單了,我們只需要把 JSON 文本通過 JSON.decode 方法轉換成 Map,然后把它交給 User 的工廠類 fromJson 方法,即可完成 User 對象的解析:
項目中往往會碰到 嵌套對象屬性 情況,
面對這種情況,我們需要為每一個非基本類型屬性創建一個解析類。
然后,我們只需要在 User 類中,增加 dog 屬性及對應的 JSON 映射規則即可:
通過這種方法,無論對象有多復雜的非基本類型屬性,我們都可以創建對應的解析類進行處理。
不過到現在為止,我們的 JSON 數據解析還是在主 Isolate 中完成。如果 JSON 的數據格式比較復雜,數據量又大,這種解析方式可能會造成短期 UI 無法響應。下面我們可以用 compute 函數優化一下
通過 compute 的改造,我們就不用擔心 JSON 解析時間過長阻塞 UI 響應了。
fabricate vt.制作,組合;捏造
fabrication n.制作,構成;捏造
facilitate vt.使容易;助長
faction n.派別,宗派,小集團
fair a.美麗的
fake n.假貨,膺品 a.假的
fall vi.變成,成為;陷于
fantastic a.空想的;奇異的
fascinate vt.迷住 vi.迷人
fastener n.扣件,鈕扣,撳鈕
faultless a.無過失的;無缺點的
fearless a.無畏的,大膽的
feel vi.摸起來
fell vt.砍倒(樹等);砍伐
fellowship n.伙伴關系;聯誼會
feminine a.女性的;女子氣的
fence n.擊劍(術) vi.擊劍
ferrous a.鐵的;亞鐵的
ferry n.渡船;渡口 vt.運送
fertile a.(創造力)豐富的
fighter n.斗爭者;戰斗機
filament n.細絲;長絲;燈絲
fill vt.擔任(職務);填補
filter vi.濾過
filth n.污穢,污物;淫猥
finance vt.提供資金
finely ad.精細地,美好地
finite a.有限的;有盡的
fireplace n.壁爐
firework n.爆竹,花炮,煙火
firmness n.堅固,堅定,穩固
first-rate a.第一流的,優秀的
fission n.裂開;分裂生殖
fitness n.適當,恰當;健康
fitting a.適當的 n.配合
fixture n.固定;定期存款
flake n.片,薄片;肌膈
flame vi.發火焰 vt.點燃
flank n.肋,肋腹;側面
flannel n.法蘭絨;法蘭絨衣服
flap vt.n.拍打 vi.拍動
flask n.瓶;火藥筒;砂箱
flatten vt.把…弄平;擊倒
flatter vt.奉承,阿諛,諂媚
flavour vt.給…調味
flaw n.缺點,瑕疵;裂隙
flee vi.逃走 vt.逃避
flexible a.靈活的,可變通的
flight n.潰退,逃跑;外流
fling vi.vt.(用力)扔,拋
float n.漂浮物;浮標,木筏
flock vi.群集,聚集
fluctuate vi.波動 vt.使波動
fluctuation n.波動;脈動;躊躇
flush n.興奮,臉紅;發燒
flutter vi.(鳥)振翼;飄動
flux n.流;漲潮;流量
fly v.飛跑,逃跑,消失
foam n.泡沫;泡沫塑料
follow vt.從事(職業),經營
follower n.契據的附面;從動件
footpath n.小路,人行道
fore ad.在前面 a.先前的
foreign a.無關的
foresee vt.預見,預知,看穿
forge vt.打(鐵等),鍛造
formal a.形態的;規范的
formerly ad.以前,從前
formidable a.可怕的;難對付的
formulate vt.用公式表示
formulation n.明確的表達
forsake vt.遺棄,拋棄,摒絕
fort n.要塞,堡壘
forthcoming a.即將到來的;現有的
fortress n.堡壘,要塞
forum n.論壇,討論會
forward ad.向前,將來vt.轉遞
fossil n.化石 a.化石的
foster vt.養育,撫養;培養
foul a.骯臟的;丑惡的
fowl n.家禽;禽肉
fraction n.分數;分餾的部分
fracture n.破裂;裂痕 vi.破裂
fragile a.脆的;體質弱的
fragrant a.香的,芬芳的
frail a.脆弱的;意志薄弱的
framework n.機構,組織,體制
freight n.運費;貨運;負擔
frequency n.頻繁,屢次;頻率
frequent a.常見的;頻繁的
freshen vt.使顯得新鮮
fret vt.vi.(使)煩惱
friction n.擦熱皮膚
fright n.驚嚇,恐怖
frightful a.可怕的;討厭的
fringe n.穗,毛邊;邊緣
fro ad.往,去,回,向后
當前題目:flutter詞匯解析,flutter含義
文章轉載:http://www.yijiale78.com/article28/dschsjp.html
成都網站建設公司_創新互聯,為您提供Google、網站設計、網站建設、外貿建站、小程序開發、網站策劃
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯