hello world例子
“專業(yè)、務(wù)實(shí)、高效、創(chuàng)新、把客戶的事當(dāng)成自己的事”是我們每一個(gè)人一直以來(lái)堅(jiān)持追求的企業(yè)文化。 成都創(chuàng)新互聯(lián)公司是您可以信賴的網(wǎng)站建設(shè)服務(wù)商、專業(yè)的互聯(lián)網(wǎng)服務(wù)提供商! 專注于成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、軟件開發(fā)、設(shè)計(jì)服務(wù)業(yè)務(wù)。我們始終堅(jiān)持以客戶需求為導(dǎo)向,結(jié)合用戶體驗(yàn)與視覺傳達(dá),提供有針對(duì)性的項(xiàng)目解決方案,提供專業(yè)性的建議,創(chuàng)新互聯(lián)建站將不斷地超越自我,追逐市場(chǎng),引領(lǐng)市場(chǎng)!
在終端打印字符串‘Hello World!’
計(jì)算斐波那契數(shù)列
一個(gè)簡(jiǎn)單的類
計(jì)算兩點(diǎn)距離
異步并發(fā)示例
使用了Isolate
1.面向?qū)ο?/p>
對(duì)于面向?qū)ο筮@個(gè)概念,相信了解Java的同學(xué)對(duì)這個(gè)概念一定不會(huì)陌生。
例如:我們有個(gè)Person Object他有很多特征和行為。
這些都是這個(gè)Person Object的屬性。
也就是因?yàn)橛辛诉@些特征,行為等等才決定了這個(gè)人是誰(shuí)。
那么回到Dart當(dāng)中,所有的都是對(duì)象,那么在就可以可以跟進(jìn)對(duì)象的屬性的特征,方法等等來(lái)進(jìn)行編程。
之所以我們?cè)谶@里又特別強(qiáng)調(diào)了一下面向?qū)ο蟮母拍?,是因?yàn)檫@個(gè)概念在Dart語(yǔ)言當(dāng)中,至關(guān)重要!
2.最重要的幾個(gè)概念
3.Dart的部分特性
4.Dart的內(nèi)置庫(kù)
包名
描述
dart:asynv
異步編程,提供Future,Stream類
dart:collection
集合
dart:convert
不同類型的字符編碼解碼
dart:core
Dart語(yǔ)言核心功能,內(nèi)置類型
dart:html
網(wǎng)頁(yè)開發(fā)用到的庫(kù)
dart:io
文件讀寫,IO相關(guān)
dart:math
數(shù)字常量以及函數(shù),隨機(jī)算法等
dart:svg
事件和動(dòng)畫矢量圖支持
綜上述所說(shuō)要想學(xué)Flutter,先學(xué)Dart!關(guān)于Flutter下篇我會(huì)講到。為什么離不開dart!
有關(guān)更多面經(jīng)、核心技術(shù)筆記;自己也是從事Android開發(fā)5年有余了;整理了一些Android開發(fā)技術(shù)核心筆記和面經(jīng)題綱, 如有需要的同學(xué)請(qǐng)私信我回復(fù)“核心筆記”或“面試”領(lǐng)取!
在說(shuō)flutter國(guó)際化前,不得不提到,在uni-app中支持的Vue-i18n,兩者有相似之處,也有差異的地方。
本篇借鑒了三篇熱門帖子
Flutter中的國(guó)際化:如何寫一個(gè)多語(yǔ)言的App
Flutter國(guó)際化完整例子
Internationalization - Make an Flutter application multi-lingual
只記錄根據(jù)手機(jī)系統(tǒng)語(yǔ)言自動(dòng)轉(zhuǎn)換app語(yǔ)言
引入后,保存會(huì)自動(dòng)加入安裝此依賴
我們新建一個(gè)和"/lib"同級(jí)別的文件夾"/locale",然后在這個(gè)文件夾中新建兩個(gè)文件,分別為"i18n_en.json" 和" i18n_zh.json"。再在"/lib"文件夾下創(chuàng)建和"main.dart"同級(jí)的"translation.dart"和"application.dart"。
??文件夾樹現(xiàn)在是這個(gè)樣子的:
MyApplication
? |
? +- android
? +- build
? +- images
? +- ios
? +- lib
?? |
?? +-main.dart
?? +-translation.dart
?? +-application.dart
? +- locale
?? |
?? +- i18n_en.json
?? +- i18n_zh.json
? +- test
在pubspec.yaml繼續(xù)加入json,引入靜態(tài)資源
補(bǔ)充:如果需要強(qiáng)制轉(zhuǎn)換的話(我自己沒有用到)
上一篇講到如果解決ios長(zhǎng)按輸入框報(bào)錯(cuò)的問(wèn)題,但是最終沒有達(dá)到我們的要求,因?yàn)槲覀兿雽?shí)現(xiàn)中文的提示,那么本篇文章講講如何來(lái)實(shí)現(xiàn)多語(yǔ)言配置;
1.首先在pubspec.yaml的dependencies下加入這個(gè)
flutter_localizations:
sdk: flutter
如圖:
2.然后在MaterialApp設(shè)置一下localizationsDelegates如圖:
3.寫一個(gè)類繼承一下CupertinoLocalizations,在項(xiàng)目中 我這個(gè)類名叫ChineseCupertinoLocalizations(沒錯(cuò),就是localizationsDelegates中的第三個(gè)),如圖:
上次提到報(bào)錯(cuò)的原因就是因?yàn)閏utButtonLabel,copyButtonLabel,pasteButtonLabel,selectAllButtonLabel 這幾個(gè)按鈕沒有實(shí)現(xiàn),所以繼承CupertinoLocalizations一定要為這幾個(gè)按鈕賦值,這里是那種語(yǔ)言,那么,賦值就對(duì)應(yīng)那種語(yǔ)言,同時(shí)要注意locale.languageCode也要填寫,如果你是中文,那么locale.languageCode =='zh';
4.在ios工程中,在項(xiàng)目的info設(shè)置語(yǔ)言環(huán)境
添加?Localization native development region---china
添加一個(gè)Localizations 為array類型的,并且設(shè)置值為?Chinese (simplified)
效果圖:( 注意:請(qǐng)把手機(jī)環(huán)境調(diào)試成中文的語(yǔ)言環(huán)境 )
Android?
ios 效果圖
我公司用flutter做了一個(gè)《柚品生活》的app,感興趣的朋友可以去看看,Android和ios都已經(jīng)上架了
最后附上GitHub項(xiàng)目地址 GitHub - hxxsocket/flutter_lg_demo: flutter多語(yǔ)言配置之中文