实现
import 'package:flutter/material.dart';
class CustomDialog extends Dialog {
@override
Widget build(BuildContext context) {
return Material(
type: MaterialType.transparency,
child: Center(
child: Container(
width: 100,
height: 100,
decoration: BoxDecoration(
color: Colors.red,
borderRadius: BorderRadius.all(Radius.circular(50))),
child: Center(
child: Text("自定义dialog"),
),
),
),
);
}
}
使用
- 同系统的AlertDialog使用方式一致,只是在builder回调中,返回自定义的dialog
showDialog(context: context, builder: (context){
return CustomDialog();
});
定时器
Timer.periodic(
Duration(milliseconds: 3000),
(timer) {
Navigator.pop(context);
timer.cancel();
});