flutter - 我想在我的颤振应用程序中显示弹出客户警报框,例如引导警报框
解决方案
我在我的项目中创建了这种类型的警报框,您可以使用它:
alertBox.dart:
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class AlertBox {
final String title;
final String content;
final BuildContext context;
AlertBox(this.title, this.content, this.context){
showGeneralDialog(
context: context,
barrierDismissible: true,
barrierLabel: MaterialLocalizations.of(context)
.modalBarrierDismissLabel,
transitionDuration: const Duration(milliseconds: 500),
transitionBuilder: (
BuildContext context,
Animation<double> animation,
Animation<double> secondaryAnimation,
Widget child,
) =>
SlideTransition(
position: Tween<Offset>(
begin: Offset(0,-1),
end: Offset.zero,
).animate(
CurvedAnimation(
parent: animation,
curve: Curves.linear,
),
),
child: child,
),
pageBuilder: (BuildContext buildContext,
Animation animation,
Animation secondaryAnimation) {
return SafeArea(
child: Align(
alignment: Alignment.topCenter,
child: Container(
decoration: BoxDecoration(
border: Border.all(
color: Colors.red,
),
borderRadius: BorderRadius.all(Radius.circular(10)),
color: Colors.red[100],
),
width: MediaQuery.of(context).size.width - 40,
height: 60,
padding: EdgeInsets.all(5),
child: Scaffold(
backgroundColor: Colors.transparent,
body: Center(
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Expanded(
child: Align(
alignment: Alignment.topCenter,
child: Column(
children: [
Text(title.toString(),style: TextStyle(fontSize: 15,fontWeight: FontWeight.w900,letterSpacing: 1,color: Colors.red),),
SizedBox(height: 5,),
Text(content.toString(),style: TextStyle(fontSize: 12,color: Colors.red))
],
),
),
),
GestureDetector(
onTap: (){
Navigator.pop(buildContext);
},
child: Icon(
Icons.clear,
color: Colors.red,
size: 20,
),
),
],
),
),
),
),
),
);
});
}
}
像这样称呼它:
AlertBox("title","error",context);
推荐阅读
- symfony - 如何在easyadmin中为删除操作添加item_permission?
- javascript - 一些变量被多次加载
- javascript - 将数组元素的值与前一个元素相加
- php - php可以调用静态别名吗?
- php - 如何在没有 fosUser 的情况下在 fosCommentBundle 中添加输入用户名?
- javascript - 控制台显示 getElementsBy 的不同输出 ... 导致 Array.prototype.slice.call 在浏览器刷新时失败
- javascript - Node.js 要求找不到 libdpfpdd.so.2 文件,该文件与我的 .node 文件位于同一目录中
- python - 如何在我的 django 博客侧边栏上显示类别列表?
- android - Android 哈希键导致 Ionic 应用程序中的 Facebook 和 Google 身份验证出现问题
- android - 如何将项目动态添加到recyclerview?