103 lines
4.0 KiB
Dart
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)),
|
|
),
|
|
],
|
|
),
|
|
),
|
|
),
|
|
],
|
|
),
|
|
),
|
|
),
|
|
);
|
|
}
|
|
}
|