中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

昆明網(wǎng)站建設(shè)-中國(guó)互聯(lián)精準(zhǔn)客戶(hù)數(shù)據(jù)采集軟件

昆明網(wǎng)站建設(shè)-中國(guó)互聯(lián),精準(zhǔn)客戶(hù)數(shù)據(jù)采集軟件,微博推廣方式,網(wǎng)易那個(gè)自己做游戲的網(wǎng)站是什么背景: 在使用GetX框架時(shí),同時(shí)使用了Get.snackbar提示框和Get.dialog加載框,當(dāng)這兩個(gè)widget同時(shí)存在時(shí),Get.dialog加載框調(diào)用Get.back()無(wú)法正常關(guān)閉。 沖突解釋: 之所以會(huì)產(chǎn)生沖突,是因?yàn)镚et.snackbar在關(guān)…

背景:
在使用GetX框架時(shí),同時(shí)使用了Get.snackbar提示框和Get.dialog加載框,當(dāng)這兩個(gè)widget同時(shí)存在時(shí),Get.dialog加載框調(diào)用Get.back()無(wú)法正常關(guān)閉。

沖突解釋:
之所以會(huì)產(chǎn)生沖突,是因?yàn)镚et.snackbar在關(guān)閉時(shí)會(huì)有一個(gè)動(dòng)畫(huà),這個(gè)動(dòng)畫(huà)的默認(rèn)持續(xù)時(shí)間為1s,這個(gè)動(dòng)畫(huà)的持續(xù)時(shí)間內(nèi),Get.snackbar并沒(méi)有真正意義上的關(guān)閉,這時(shí)候我們調(diào)用Get.back()是無(wú)法關(guān)閉Get.dialog。

實(shí)現(xiàn):

  1. 創(chuàng)建一個(gè)統(tǒng)一的SnackBarManager去管理提示框。
import 'package:get/get.dart';
import 'package:flutter/material.dart';class SnackBarManager {factory SnackBarManager() => instance;static final SnackBarManager instance = SnackBarManager._internal();SnackBarManager._internal();String _lastMessage = '';int _lastDuration = 0;int _lastTime = 0;void showSnackBar(String title, String message, {Color? backgroundColor, Duration? duration}) {var currentTime = DateTime.now().millisecondsSinceEpoch;// 相同消息持續(xù)時(shí)間內(nèi)重復(fù)提交時(shí),返回if (currentTime - _lastTime < _lastDuration * 1000 && _lastMessage == message) {return;}dismissSnackBar();Get.snackbar(title,message,backgroundColor: backgroundColor ?? Colors.black12,duration: duration ?? Duration(seconds: 2), // 提示框持續(xù)時(shí)間animationDuration: Duration(milliseconds: 0), // 過(guò)渡動(dòng)畫(huà)的時(shí)間,這里設(shè)置為0是為了在使用Get.dialog時(shí)避免關(guān)閉沖突);_lastDuration = duration?.inSeconds ?? 2;_lastTime = DateTime.now().millisecondsSinceEpoch;_lastMessage = message;}void dismissSnackBar() {Get.closeCurrentSnackbar();}
}

這是一個(gè)避免重復(fù)顯示的顯示的提示框,可參考博客:Flutter中Get.snackbar避免重復(fù)顯示的實(shí)現(xiàn)
2. 創(chuàng)建一個(gè)LoadingDialog去實(shí)現(xiàn)加載框。

import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:get/get_core/src/get_main.dart';class LoadingDialog {static void show([String? msg]) {Get.dialog(PopScope(canPop: false,child: Center(child: Container(padding: EdgeInsets.symmetric(horizontal: 24, vertical: 16), // 減小內(nèi)邊距decoration: BoxDecoration(color: Colors.white,borderRadius: BorderRadius.circular(8),),child: Row(mainAxisSize: MainAxisSize.min, // 設(shè)置為最小寬度children: [SizedBox(width: 24, // 減小加載圖標(biāo)尺寸height: 24,child: CircularProgressIndicator(strokeWidth: 2.0, // 可以適當(dāng)減小進(jìn)度條寬度),),SizedBox(width: 12), // 減小間距Text(msg ?? "加載中...",style: TextStyle(fontSize: 14, color: Colors.black), // 可以適當(dāng)調(diào)整字體大小),],),),),),barrierDismissible: false,);}static void hide() {if (Get.isDialogOpen ?? false) {// 先關(guān)閉 SnackbarGet.closeCurrentSnackbar();// 添加延遲以確保 Snackbar 已關(guān)閉Future.delayed(Duration(milliseconds: 100), () {if (Get.isDialogOpen ?? false) {Get.back();}});}}
}

在關(guān)閉加載框之前,會(huì)先關(guān)閉提示框,由于Get.snackbar動(dòng)畫(huà)時(shí)長(zhǎng)已經(jīng)設(shè)置為0,此時(shí)延遲100ms后再關(guān)閉加載框是沒(méi)有問(wèn)題的。

http://www.risenshineclean.com/news/29242.html

相關(guān)文章:

  • 小學(xué)網(wǎng)站源碼php個(gè)人在線做網(wǎng)站免費(fèi)
  • 做網(wǎng)站話掙錢(qián)嗎google下載官網(wǎng)
  • 武平縣網(wǎng)站建設(shè)搜索引擎競(jìng)價(jià)廣告
  • seo優(yōu)化價(jià)格seo1搬到哪里去了
  • 樂(lè)清網(wǎng)站設(shè)計(jì)公司哪家好百度 營(yíng)銷(xiāo)中心
  • 哈爾濱自助建站模板網(wǎng)站推廣軟件
  • 萊蕪金點(diǎn)子信息港最新招聘信息港南寧seo優(yōu)化公司
  • 山東濟(jì)南網(wǎng)站建設(shè)公司深圳公司網(wǎng)絡(luò)推廣該怎么做
  • 酒類(lèi)網(wǎng)站建設(shè)方案百度推廣客戶(hù)端手機(jī)版
  • 網(wǎng)站推廣計(jì)劃怎么寫(xiě)青島 google seo
  • 唐山網(wǎng)站建設(shè)哪家優(yōu)惠2000元代理微信朋友圈廣告
  • 單頁(yè)面網(wǎng)站制作視頻線上推廣方案怎么寫(xiě)
  • 投訴做網(wǎng)站的電話長(zhǎng)沙seo 優(yōu)化選智投未來(lái)no1
  • 網(wǎng)站建設(shè)與管理課程代碼寧波seo關(guān)鍵詞優(yōu)化方法
  • 安化建設(shè)局網(wǎng)站微信營(yíng)銷(xiāo)策略有哪些
  • 知名電子商務(wù)網(wǎng)站英雄聯(lián)盟世界排名
  • 帶視頻的網(wǎng)站模板免費(fèi)數(shù)據(jù)分析網(wǎng)站
  • 安全達(dá)標(biāo)建設(shè)網(wǎng)站鄭州計(jì)算機(jī)培訓(xùn)機(jī)構(gòu)哪個(gè)最好
  • 燕郊建設(shè)局網(wǎng)站建網(wǎng)站專(zhuān)業(yè)
  • 展示型網(wǎng)站舉例seo專(zhuān)員崗位職責(zé)
  • 專(zhuān)業(yè)建站是什么百度2019舊版本下載
  • 前端seo主要優(yōu)化哪些seo優(yōu)化是什么
  • 如何做網(wǎng)站微信支付鄭州百度快照優(yōu)化
  • 電子商務(wù)系統(tǒng) 網(wǎng)站建設(shè)百度教育會(huì)員
  • 開(kāi)源網(wǎng)站github最近一周?chē)?guó)內(nèi)熱點(diǎn)新聞
  • 濰坊網(wǎng)站建設(shè)公司有哪些內(nèi)容網(wǎng)店培訓(xùn)教程
  • 個(gè)人興趣圖片集網(wǎng)站建設(shè)b站推廣鏈接
  • 網(wǎng)站頁(yè)面描述深圳網(wǎng)絡(luò)營(yíng)銷(xiāo)推廣招聘網(wǎng)
  • 主流網(wǎng)站開(kāi)發(fā)語(yǔ)言企業(yè)網(wǎng)站有哪些功能
  • 價(jià)錢(qián)網(wǎng)站建設(shè)百度官方網(wǎng)首頁(yè)