java更新阻止弹窗_Flutter学习笔记(41)--自定义Dialog实现版本更新弹窗

本文是Flutter学习笔记的一部分,展示了如何创建一个自定义Dialog组件来显示版本更新提示,包括弹窗的布局设计、关闭按钮以及点击事件处理。
摘要由CSDN通过智能技术生成

import 'package:flutter/material.dart';

import'package:xiaopijiang/utils/assets_util.dart';

import'package:xiaopijiang/utils/toast_util.dart';///created by WGH///on 2020/7/23///description:版本更新提示弹窗

classUpdateDialog extends Dialog {

final String upDateContent;

finalboolisForce;

UpdateDialog({this.upDateContent, this.isForce});

@override

Widget build(BuildContext context) {returnCenter(

child: Column(

mainAxisAlignment: MainAxisAlignment.center,

children:[

Container(

width:319,

height:370,

child: Stack(

children:[

Image.asset(

AssetsUtil.getImagePath(

imageName:'bg_update', suffix: 'png'),

fit: BoxFit.cover,

),

Container(

width:double.infinity,

child: Column(

mainAxisAlignment: MainAxisAlignment.spaceBetween,

children:[

Container(

margin: EdgeInsets.only(top:110),

child: Text('发现新版本',

style: TextStyle(

fontSize:20,

color: Colors.white,

decoration: TextDecoration.none)),

),

Text(upDateContent,

style: TextStyle(

fontSize:16,

color: Colors.black54,

decoration: TextDecoration.none)),

Container(

width:250,

height:42,

margin: EdgeInsets.only(bottom:15),

child: RaisedButton(

color: Colors.red,

shape: StadiumBorder(),

child: Text('立即更新',

style:

TextStyle(fontSize:20, color: Colors.white),

),

onPressed: () {

ToastUtil.showTips('下载apk');

}),

)

],

),

),

],

),

),

GestureDetector(

onTap: () {

Navigator.pop(context);

},

child: Offstage(

offstage: isForce,

child: Container(

margin: EdgeInsets.only(top:30),

child: Image.asset(

AssetsUtil.getImagePath(

imageName:'ic_update_close', suffix: 'png'),

width:35,

height:35,

)),

),

)

],

),

);

}staticshowUpdateDialog(

BuildContext context, String mUpdateContent,boolmIsForce) {returnshowDialog(

barrierDismissible:false,

context: context,

builder: (BuildContext context) {returnWillPopScope(

child: UpdateDialog(

upDateContent: mUpdateContent, isForce: mIsForce),onWillPop: _onWillPop);

});

}static Future _onWillPop() async{return false;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值