当前位置: 首页 > Web前端 > HTML

惊天秘密!如何在Flutter项目中实现运维指导

时间:2023-04-02 18:05:28 HTML

涓嶈杞荤巼鐨勮瘎浠锋垜锛屼綘鍙煡閬撴垜鐨勫悕瀛楋紝鍗翠笉鐭ラ亾鎴戠殑鏁呬簨锛屼綘鍙煡閬撴垜鍋氫簡浠€涔堬紝鍗翠笉鐭ラ亾鎴戠粡鍘嗕簡浠€涔堛€備織璇濊锛屼竴鍝佷笁瀹濓紝寮圭獥娴眰鍔犲紩瀵笺€備笂鍥炬槸鎴戝叕鍙窤PP榛戞澘涓殑鍙g畻妯″潡銆傜浉淇℃瘡涓猘pp寮€鍙戝湪宸ヤ綔涓兘浼氶亣鍒拌繖绉嶅満鏅€備负閬垮厤鐢ㄦ埛瀵规柊鍔熻兘浜х敓娣锋穯锛岄儴鍒嗗姛鑳戒細澧炲姞涓€浜涘紩瀵兼搷浣溿€傚湪鍘熺敓寮€鍙戜腑锛屾瘮濡侫ndroid寮€鍙戯紝鎴戜滑鍙互浣跨敤NewbieGuide绛夊紑婧愬簱鏉ュ疄鐜般€備絾涓嶅垢鐨勬槸锛屾垜鍦―art鍖呬腑杩涜浜嗘悳绱紝浣嗕竴鏃犳墍鑾枫€備絾鏄垜浠繕鏄緢蹇В鍐充簡闂銆傛棦鐒惰В鍐充笉浜嗛棶棰橈紝灏辫瀛︿細璁╄繖涓棶棰樹笉瀛樺湪銆傝繖涓椂鍊欏紑鍙戝疂鐗╁氨鐗瑰埆鏈夌敤浜嗐€傛湰绡囧埌姝ょ粨鏉燂紝涓嬫湡瑙侌煈媬~~寮€涓帺绗戙€備竴涓暍浜庣洿闈㈡儴娣$敓娲伙紝鏁簬鐩撮潰婊磋鐨勫ぇ姹夛紝宀傛槸涓€涓佺偣闇€瑕佸氨鑳芥墦璐ユ垜浠殑銆傛帴涓嬫潵鎴戜滑寮€濮嬫€濊€冨浣曞疄鐜拌繖涓紩瀵兼搷浣溿€傜浉淇″ぇ瀹舵帴鍒拌繖涓渶姹傞鍏堟兂鍒扮殑鏄紝杩欎釜涓滆タ涓嶅氨鏄妸鏁翠釜椤甸潰璐翠笂涓€灞傞伄缃╋紝鐒跺悗鍦ㄤ腑闂村壀鎺変竴鍧椼€傚彧闇€鍦ㄦ湯灏炬坊鍔犱竴浜涙枃鏈拰涓嬩竴姝ユ寜閽€傚鏋滀綘鎶婅繖涓渶姹傛兂鐨勮繖涔堢畝鍗曪紝閭d綘灏辩湡鐨勫浜嗐€傞偅涔堟垜浠氨鎸夌収涓婇潰璇寸殑涓変釜姝ラ鏉ュ疄鐜拌繖涓笢瑗裤€傚綋鐒讹紝濡傛灉浣犱笉鎯崇户缁線涓嬬湅锛屼篃鍙互鐩存帴鐐硅繖閲屼娇鐢ㄦ垜浠紑鍙戠殑鍚姩缁勪欢搴擄紝鍦ㄤ綘鐨凢lutter宸ョ▼涓揩閫熸帴鍏ュ惎鍔ㄥ姛鑳姐€傞偅涔堝浣曞湪Flutter椤甸潰涓婅鐩栦竴涓诞灞傚憿锛熺炕鐪嬩簡Flutter鐨凙PI鏂囨。锛屽彂鐜颁簡涓や釜娉曞疂锛屽垎鍒槸Overlay鍜孫verlayEntry銆備袱鑰呯殑鐢ㄦ硶濡備笅銆俢lass_MyWidgetStateextendsState{OverlayEntryoverlayEntry;@overrideWidgetbuild(BuildContextcontext){returnCenter(child:Column(mainAxisSize:MainAxisSize.min,children:[RaisedButton(onPressed:(){///1.鍒涘缓涓€涓猳verlayEntry瀹炰緥锛宐uilder鏂规硶杩斿洖涓€涓猈idget///Widget浼氳娓叉煋鍒伴〉闈㈢殑椤跺眰{///3.鎵цremove鏂规硶閿€姣乷verlayEntry瀹炰緥overlayEntry.remove();},child:Text('鐐规垜鍏抽棴OverlayEntry'),),),),);///2.浣跨敤OverlayState.insert鏂规硶鏄剧ずoverlayEntryOverlay.of(context).insert(overlayEntry);},child:Text('鐐规垜浣跨敤搴峰悍瑕嗙洊'),),],),);}}濡傛灉浣犱笉鏄お璁ㄥ帉锛屼綘涔熷彲浠ョ偣鍑昏繖閲岃嚜宸辫瘯涓€璇曘€備腑闂村垏涓€鍧楋紝瑙e喅浜嗘诞灞傞棶棰樸€備笅闈㈡垜浠氨鏉ョ湅鐪嬪浣曡閬僵涓棿鐨勬煇涓尯鍩熶寒璧锋潵銆傝繖涓棶棰樺緢绠€鍗曘€備负浠€涔堟槸浜殑锛熷洜涓烘湁鍏夛紝鎬庝箞鍙兘鏈夊厜銆傛垜鎯冲埌浜嗕笂甯濓紝鍥犱负涓婂笣璇磋鏈夊厜锛屾墍浠ュ氨鏈変簡鍏夈€侭ecomingGodI锛堟壘鍒扮粍浠剁殑浣嶇疆锛夋槸濡備綍鎴愪负涓婂笣鐨勭涓€姝ャ€傛垜浠渶瑕佹壘鍒伴渶瑕侀珮浜樉绀虹殑缁勪欢鐨勫ぇ灏忓拰浣嶇疆銆備粩缁嗘煡浜嗕竴涓嬶紝鍙戠幇鍦‵lutter涓紝鍙互閫氳繃GlobalKey鑾峰彇涓€涓厓绱犵殑澶у皬鍜屼綅缃紝鏍稿績浠g爜濡備笅锛?//1.澹版槑涓€涓猤lobalKeyfinalglobalKey=GlobalKey();RaisedButton(///2.灏唃lobalKey缁戝畾鍒扮粍浠堕敭涓婏細globalKey,onPressed:(){///},child:Text('鐐瑰嚮鎴戠殑搴峰悍鎺у埗鍙拌緭鍑?,),);///3.浣跨敤濡備笅浠g爜鑾峰彇缁勪欢鐨勫ぇ灏忓拰浣嶇疆RenderBoxrenderBox=globalKey.currentContext.findRenderObject();Sizesize=renderBox.size;Offsetoffset=renderBox.localToGlobal(Offset.zero);print(size);print(offset);鍏朵腑Size涓湁width鍜宧eight灞炴€э紝鍒嗗埆琛ㄧず楂樹寒缁勪欢鐨勫楂樺睘鎬э紝Offset涓湁dx鍜宧eight灞炴€э紝dy灞炴€ц〃绀虹粍浠跺乏涓婅鍒扮粍浠剁殑璺濈鍒嗗埆浣嶄簬灞忓箷鐨勫乏渚у拰椤堕儴銆傜浉淇″仛web寮€鍙戠殑鍚屽瀵规閮戒笉闄岀敓銆傚鏋滀綘涓嶆槸澶鍘岋紝涔熷彲浠ョ偣杩欓噷鑷繁璇曚竴涓嬫晥鏋溿€傛垚绁炰簩锛堥珮浜樉绀虹粍浠舵墍鍦ㄥ尯鍩燂級鎴戜滑宸茬粡鍦ㄤ唬鐮佸眰闈㈠畾浣嶄簡杩欎釜缁勪欢鐨勪綅缃紝鎺ヤ笅鏉ュ氨鏄杩欎釜鍖哄煙杩涜绮惧噯鎵撳嚮锛岃杩欎釜鍖哄煙涓嶈棰滆壊瑕嗙洊娴眰璇风湅鎴愮绗簩姝ャ€傚厛鐪嬬粨鏋滐紝鍙互鐪嬪埌涓棿鐨勭粍浠舵病鏈夎mask灞傝鐩栵紝浣嗘槸鏈夌溂鍔涚殑鍚屽鍙兘浼氬彂鐜颁负浠€涔堥《閮ㄥ拰搴曢儴鐨勯儴鍒嗘病鏈夎瑕嗙洊锛岄偅鏄洜涓篟aisedButton鏈変竴涓猼op鍜宐ottom鐨刴argin锛屾墍浠ヤ唬鐮佽幏鍙栧埌鐨凴aisedButton瀹為檯鍗犵敤鐨勭┖闂存瘮鐪嬭捣鏉ヨ澶э紝鏈夊叴瓒g殑鍚屽鍙互鐮旂┒涓嬪浣曞幓鎺夎繖涓猰argin銆傚彟涓€涓悓瀛︿細璇达紝涓轰粈涔堣繖涓埅鍥炬槸绉诲姩绔殑鎴浘锛岃€屼笉鏄綉椤垫祻瑙堝櫒鐨勬埅鍥俱€傝繖鏄釜濂介棶棰橈紝璇风湅涓嬮潰鐨勬牳蹇冧唬鐮併€侽verlayEntry(builder:(context)=>Stack(children:[///鎴戜滑浣跨敤ColorFiltered鏉ュ疄鐜拌繖涓姛鑳紺olorFiltered(colorFilter:ColorFilter.mode(///閬僵灞傞鑹睠olors.red.withOpacity(.4),BlendMode.srcOut,),child:Stack(children:[Container(decoration:BoxDecoration(///浠讳綍棰滆壊閮藉彲浠olor:Colors.white,backgroundBlendMode:BlendMode.dstOut,),),Positioned(///骞朵笖闇€瑕侀珮鐨勫昂瀵竌ndpositionofthebrightcomponentsareconsistentchild:Container(///浠绘剰棰滆壊鍙敤.dy,),],),),],));涓婇潰鍙互鐪嬪埌锛屾垜浠娇鐢⊿tack鍜孭ositioned鎶婄粍浠舵斁鍦ㄦ垜浠兂瑕佺殑鍦版柟锛岀劧鍚庨珮浜殑鏍稿績缁勪欢鏄疌olorFiltered锛屽彲浠ュ緢妫掞紝鎴戝お鍠滄杩欎釜缁勪欢浜嗭紝瀹冭兘鍋氫粈涔堝墽鎯呬篃寰堟湁鎰忔€濓紝鎴戜滑浼氬彟鍙戜竴绡囨枃绔犲崟鐙粙缁嶏紝鏁鏈熷緟~鐒跺悗璇磋涓轰粈涔堟垜浠殑鎴浘鏄湪绉诲姩绔紝涓嶅啀鏄綉椤电锛屽洜涓篊olorFiltered澶己澶т簡銆傝嚦浜嶧lutter鍥㈤槦杩樻病鏈夊湪FlutterWeb涓婂畬鍏ㄥ疄鐜板畠銆傚湪Flutter浠撳簱涓彲浠ュ湪Web涓婃壘鍒板緢澶氬叧浜嶤olorFiltered鎬ц兘寮傚父鐨勯棶棰樸€傚綋鐒讹紝濡傛灉浣犱笉瀚岄夯鐑︼紝涔熸効鎰忓皾璇曞湪Web涓婃病鏈夋晥鏋滅殑鏁堟灉锛屾垜涔熶负浣犵簿蹇冨噯澶囦簡涓€涓湪绾块摼鎺ャ€傛垚绁炰笁锛堝姞next鎸夐挳鍜屾枃瀛楋級缁堜簬鍒颁簡鏈€鍚庝竴姝ヤ簡锛屽姞next鎸夐挳鍜屾枃瀛楋紝涓嶇敤璇翠簡锛屽湪鍒涘缓overlayEntry鐨勬椂鍊檅uilder鏂规硶閲岄潰闅忎究杩斿洖浠€涔堝氨鍙互浜嗐€傞偅涔堟垜杩橀仐婕忎簡浠€涔堬紵璁ょ湡鎬濊€冪殑鍚屽鍙兘浼氭兂锛屾垜璇ュ浣曟洿鏂皁verlayEntry鍛紵涓€鑸湁澶氫釜寮曞椤点€傛€讳笉鑳芥瘡娆¢兘鍘绘帀褰撳墠鐨勶紝鍐嶆彃鍏ユ柊鐨勫惂锛岃繖鏍烽〉闈㈣偗瀹氫細闂€傚叾瀹炲鏋滀綘浠旂粏闃呰OverlayEntry鐨勬枃妗o紝浣犳槸缁濆涓嶄細閿欒繃杩欎釜markNeedsBuild鏂规硶鐨勩€傝繖閲屽氨涓嶄妇渚嬩簡锛屾垜鎳掍簡銆傜畝鑰岃█涔嬶紝濡傛灉builder鐨勫唴瀹瑰彂鐢熷彉鍖栵紝鍙互鍦╫verlayEntry涓婃墽琛屼竴娆verlayEntry.markNeedsBuild()锛孎lutter浼氶噸鏂版覆鏌揵uilder杩斿洖鐨勫唴瀹广€傝繖鏍峰氨鍙互涓嶉棯鐑佸湴鍒囨崲寮曞椤典簡銆傜浉淇″畬鎴愪互涓婁笁姝ュ悗锛屽嵆浣挎垜浠病鏈夋垚绁烇紝涔熷彲浠ユ湁鍏夛紝楂樹寒鎸囧畾鍖哄煙銆備竴鍙ヨ瘽鎬荤粨锛氭垜浠娇鐢∣verlay鍜孋olorFiltered瀹屾垚浜嗗紩瀵奸〉鐨勫埗浣溿€傜湅瀹屼箣鍚庯紝鑰愬績鐪嬪畬鐨勫皬浼欎即浠竴瀹氳寰椾綔鑰呮病鏈夐獥鎴戙€傜‘瀹炲緢绠€鍗曘€傛垜宸茬粡浣跨敤浜嗚繖涓や釜缁勪欢銆侭ut锛氫簬鏄紝鎴戜滑璐村績鍦板紑鍙戜簡涓€涓皬搴擄紝鍊熺敤浜嗙綉缁滀笂鐭ュ悕鐨勫紩瀵煎簱Intro.js鐨勫悕瀛楋紝鍙栧悕涓篺lutter_intro銆傚簾璇濆皯璇达紝鍏堢湅浜嬫儏銆備笂鍥炬槸浣跨敤flutter_intro榛樿涓婚鍙互蹇€熷疄鐜扮殑寮€鏈烘晥鏋溿€傞偅涔堟垜璇ュ浣曚娇鐢ㄥ畠鍛紵棣栧厛鍦ㄩ」鐩緷璧栨枃浠秔ubspec.yaml涓紩鍏lutter_intro銆傚崟鍑绘澶勬煡鐪嬫渶鏂扮増鏈€傚紩鍏ntro骞跺疄渚嬪寲涓€涓璞mport'package:flutter_intro/flutter_intro.dart';///1.寮曞叆Intro锛屽疄渚嬪寲涓€涓璞★紝浼犲叆闇€瑕佺殑stepCount鍙傛暟///鍜寃idgetBuilder鍙傛暟锛屽叾涓瓀idgetBuilder鍙互浣跨敤搴撴瀯寤?in///鏂规硶锛岃繖鏍峰彧闇€瑕佷紶鍏ヨ鏄剧ず鐨勬枃鏈嵆鍙€?//褰撶劧锛屽鏋滀綘涓嶅お璁ㄥ帉锛屼綘涔熷彲浠ヨ嚜宸卞疄鐜皐idgetBuilder鏂规硶銆侷ntrointro=Intro(///寮曞椤垫€绘暟蹇呴』閫氳繃stepCount:4,///楂樹寒鍖哄煙鍜寃idget涔嬮棿鐨勫唴杈硅窛padding:EdgeInsets.all(8),///鐨勫渾瑙掑崐寰勯珮浜尯鍩焍orderRadius:BorderRadius.all(Radius.circular(4)),///浣跨敤搴撻粯璁ゆ彁渚涚殑useDefaultTheme锛屽彲浠ュ揩閫熸瀯寤哄紩瀵奸〉闈?//闇€瑕佽嚜瀹氫箟寮曞鐨勬牱寮忓拰鍐呭椤甸潰锛岄渶瑕佽嚜宸卞疄鐜皐idgetBuilder鏂规硶widgetBuilder:StepWidgetBuilder.useDefaultTheme(///Prompttexttexts:['浣犲ソ锛屾垜鏄疐lutterIntro.','鎴戝彲浠ュ府浣犲揩閫熼槄璇籉lutter椤圭洰涓殑RealizeStepByStepguidance.','鎴戠殑鐢ㄦ硶涔熷緢绠€鍗曪紝澶у鍙互閫氳繃example鍜宎pi鏂囨。蹇€熸帉鎻″拰浣跨敤銆?,'涓轰簡蹇€熷疄鐜版寚瀵硷紝鎴戣繕榛樿鎻愪緵浜嗕竴濂楁牱寮忥紝鍑篵ox,绁濅綘浣跨敤鎰夊揩锛屽啀瑙侊紒',],///鎸夐挳鏂囧瓧btnLabel:'Igotit',///鎸夐挳鍚庢槸鍚︽樉绀哄綋鍓嶆楠howStepLabel:true,),);涓嬪浘鏄痜lutter_intro鏀寔鐨勪竴浜涘弬鏁伴厤缃搴斾綅缃殑浠嬬粛锛氬皢globalKey缁戝畾鍒伴渶瑕佸紑鏈虹殑Widget涓婃槸寰堢啛鎮夌殑鎿嶄綔锛屽拰涓婇潰浠嬬粛鐨勪竴妯′竴鏍枫€傚綋鐒讹紝涓轰簡浣犵殑鏂逛究锛屽簱宸茬粡涓轰綘鍒涘缓浜嗕竴涓猤lobalKey锛屼綘鍦ㄤ娇鐢ㄧ殑鏃跺€欏彧闇€瑕侀€氳繃intro.keys[subscript]鑾峰彇鍗冲彲銆侾laceholder(///2.绗竴涓紩瀵奸〉鏄粦瀹氶敭涓殑绗竴椤癸紝浠嬬粛閿細intro.keys[0])澶柟渚夸簡锛佸叏鍐涘噯澶囪繘鏀伙紝鎴戜滑宸茬粡鍋氬ソ浜嗕竴鍒囧噯澶囥€傝緭鍏ヤ互涓嬪懡浠ゅ苟鍗曞嚮杩愯銆備粙缁嶃€傚紑濮嬶紙涓婁笅鏂囷級锛涗笉鐢ㄤ簡锛屾槸涓嶆槸寰堢畝鍗曘€備綘澶笐浜嗐€傚鏋滀綘瑙夊緱鎴戠殑榛樿涓婚寰堜笐锛屾兂鑷繁瀹炵幇widgetBuilder鏂规硶锛屾垜鍙互鎺ュ彈銆傛渶缁堢殑灏忛儴浠跺嚱鏁帮紙StepWidgetParamsparams锛墂idgetBuilder锛涜鏂规硶浼氬湪寮曞椤甸潰鍑虹幇鏃惰flutter_intro鍐呴儴璋冪敤锛屽苟灏嗗綋鍓嶉〉闈㈢殑涓€浜涙暟鎹互鍙傛暟鐨勫舰寮忛€氳繃StepWidgetParams浼犲叆锛屾渶缁堟覆鏌撳埌灞忓箷涓婂苟鐢辫鏂规硶缁勪欢杩斿洖銆俢lassStepWidgetParams{///杩斿洖涓婁竴涓紩瀵奸〉鏂规硶锛屽鏋滄病鏈夊垯nullfinalVoidCallbackonPrev;///杩涘叆涓嬩竴涓紩瀵奸〉闈㈡柟娉曪紝濡傛灉娌℃湁鍒檔ullfinalVoidCallbackonNext;///缁撴潫鎵€鏈夊紩瀵奸〉MethodfinalVoidCallbackonFinish;///褰撳墠鎵ц鐨勫紩瀵奸〉鏁帮紝浠?寮€濮媐inalintcurrentStepIndex;///鎬诲紩瀵奸〉鏁癴inalintstepCount;///灞忓箷鐨勫楂榝inalSizescreenSize;///Height浜壊缁勪欢鐨勫楂榝inalSizesize;///楂樹寒缁勪欢finalOffset鍋忕Щ閲忓乏涓婅鐨勫潗鏍囷紱}StepWidgetParams鎻愪緵浜嗙敓鎴愬紩瀵奸〉闇€瑕佺殑鎵€鏈夊弬鏁帮紝榛樿鎻愪緵鐨勪富棰樹篃鏄牴鎹繖涓弬鏁扮敓鎴愬紩瀵奸〉銆傚ぉ涓嬫病鏈変笉鏁g殑绛靛腑锛屼絾浣犺嫢璇锋垜锛屾垜鍙互闄綘鍚冧竴闃靛瓙銆傛湰鏂囦富瑕佷粙缁嶅浣曞湪Flutter涓疄鐜版搷浣滃紩瀵硷紝骞跺湪姝ゅ熀纭€涓婂皝瑁呬簡涓€涓垜浠溂涓笢鍗婄悆鏈€濂界殑flutter_intro銆傚鐢靛瓙鎰熷叴瓒o紵璇峰叧娉ㄦ垜浠殑寮€婧愰」鐩瓻lectronPlayground锛屽甫浣犲揩閫熶笂鎵婨lectron銆傛瘡鍛ㄤ簲鎴戜滑閮戒細鎸戦€変竴浜涙湁瓒g殑鏂囩珷鍜屾柊闂讳笌澶у鍒嗕韩銆傚揩鏉ュ叧娉ㄦ垜浠殑灏忛鍛ㄥ垔鍚с€傛垜浠槸濂芥湭鏉ュ皬榛戞澘鐨勫墠绔妧鏈洟闃熴€傛垜浠細缁忓父涓庢偍鍒嗕韩鏈€鏂版渶閰风殑琛屼笟鎶€鏈煡璇嗐€傛杩庣煡涔庛€佹帢閲戙€丼egmentfault銆丆SDN銆佺畝涔︺€佸紑婧愪腑鍥姐€佸崥瀹㈠洯鍏虫敞鎴戜滑銆?/p>

最新推荐
猜你喜欢