AI_Drawing/lib/dialog/obtaining_benefits_dialog.dart
2024-06-03 15:30:15 +08:00

103 lines
4.0 KiB
Dart

import 'package:flutter/material.dart';
import '../bean/equity_bean.dart';
import '../generated/l10n.dart';
class ObtainingBenefitsDialog extends StatefulWidget {
Function onTap;
EquityBean? equityBean;
ObtainingBenefitsDialog({required this.onTap, required this.equityBean});
@override
State<ObtainingBenefitsDialog> createState() => _ObtainingBenefitsDialogState();
}
class _ObtainingBenefitsDialogState extends State<ObtainingBenefitsDialog> {
@override
Widget build(BuildContext context) {
return Material(
type: MaterialType.transparency, //透明类型
color: const Color(0x00000000),
child: Container(
alignment: Alignment.center,
child: Container(
width: double.infinity,
margin: EdgeInsets.only(left: 27, right: 27),
decoration: BoxDecoration(color: Colors.white, borderRadius: BorderRadius.all(Radius.circular(10))),
child: Column(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center,
children: [
Container(
margin: const EdgeInsets.only(top: 18),
child: Text(
S.of(context).obtaining_benefits,
style: const TextStyle(fontSize: 20),
),
),
GestureDetector(
onTap: () {
if (widget.equityBean?.ObjAdvert?.WatchNum != widget.equityBean?.ObjAdvert?.TotalNum) {
Navigator.pop(context);
widget.onTap(0);
}
},
child: Container(
width: double.infinity,
height: 48,
margin: const EdgeInsets.only(left: 21, right: 21, top: 27),
decoration: const BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(10)),
gradient: LinearGradient(
begin: Alignment.centerLeft, //渐变开始于上面的中间开始
end: Alignment.centerRight, //渐变结束于下面的中间
colors: [Color(0xFF843FFF), Color(0xFFEB76FF)])),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
"${S.of(context).Full_Watch}${widget.equityBean?.ObjAdvert?.WatchNum}/${widget.equityBean?.ObjAdvert?.TotalNum})",
style: TextStyle(color: Colors.white),
),
Text(
S.of(context).Get_saved,
style: TextStyle(fontSize: 12, color: Colors.white),
),
],
),
),
),
GestureDetector(
onTap: () {
widget.onTap(1);
},
child: Container(
width: double.infinity,
height: 48,
margin: const EdgeInsets.only(left: 21, right: 21, top: 12, bottom: 21),
decoration:
BoxDecoration(borderRadius: BorderRadius.all(Radius.circular(10)), border: Border.all(color: Color(0xFF8A42FF), width: 1)),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
"${S.of(context).Number_of}${widget.equityBean?.ObjProduct?.Price}",
style: TextStyle(color: Color(0xFF8B43FF)),
),
Text(
"${widget.equityBean?.ObjProduct?.ProductNum}${S.of(context).Number_of_saved}",
style: TextStyle(fontSize: 12, color: Color(0xFF8B43FF)),
),
],
),
),
),
],
),
),
),
);
}
}