164 lines
4.9 KiB
Dart
164 lines
4.9 KiB
Dart
import 'package:flutter/material.dart';
|
||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||
import 'package:get/get.dart';
|
||
import 'package:circle_app/components/my_app_bar.dart';
|
||
import 'package:circle_app/router/app_routers.dart';
|
||
import 'package:circle_app/util/util.dart';
|
||
|
||
import 'logic.dart';
|
||
|
||
class Good_reviewsPage extends StatelessWidget {
|
||
Good_reviewsPage({Key? key}) : super(key: key);
|
||
|
||
final logic = Get.find<Good_reviewsLogic>();
|
||
|
||
@override
|
||
Widget build(BuildContext context) {
|
||
return GetBuilder<Good_reviewsLogic>(builder: (logic) {
|
||
List<Widget> widgets = [];
|
||
List<Widget> tipwidgets = [];
|
||
if (logic.imgUrl.isEmpty) {
|
||
widgets.add(GestureDetector(
|
||
onTap: () {
|
||
logic.getImageFile();
|
||
},
|
||
child: Image.asset(
|
||
getMineImage(
|
||
'icon_upload',
|
||
),
|
||
width: 100.sp,
|
||
),
|
||
));
|
||
} else {
|
||
for (var element in logic.imgUrl) {
|
||
widgets.add(Stack(
|
||
children: [
|
||
ClipRRect(
|
||
borderRadius: BorderRadius.circular(8.sp),
|
||
child: Image.network(
|
||
element,
|
||
width: 100.sp,
|
||
height: 100.sp,
|
||
fit: BoxFit.cover,
|
||
)),
|
||
Positioned(
|
||
top: 0,
|
||
right: 0,
|
||
child: GestureDetector(
|
||
onTap: () {
|
||
// showToast("删除");
|
||
logic.imgUrl.remove(element);
|
||
logic.update();
|
||
},
|
||
child: Image(
|
||
image: AssetImage(getMineImage("icon_img_del")),
|
||
width: 20.sp,
|
||
height: 20.sp,
|
||
),
|
||
))
|
||
],
|
||
));
|
||
widgets.add(SizedBox(width: 10.sp,));
|
||
}
|
||
|
||
if (logic.imgUrl.length < 3) {
|
||
widgets.add(GestureDetector(
|
||
onTap: () {
|
||
logic.getImageFile();
|
||
},
|
||
child: Image.asset(
|
||
getMineImage(
|
||
'icon_upload',
|
||
),
|
||
width: 100.sp,
|
||
),
|
||
));
|
||
}
|
||
}
|
||
|
||
for (var element in logic.tipImgUrl) {
|
||
tipwidgets.add(
|
||
GestureDetector(
|
||
onTap: () {
|
||
Get.toNamed(AppRoutes.Swiper,arguments: {
|
||
'imaglist': logic.tipImgUrl,
|
||
'index': logic.tipImgUrl.indexOf(element)
|
||
});
|
||
},
|
||
child: ClipRRect(
|
||
borderRadius: BorderRadius.circular(8.sp),
|
||
child: Image.network(
|
||
element,
|
||
width: 100.sp,
|
||
height: 100.sp,
|
||
fit: BoxFit.cover,
|
||
)),
|
||
),
|
||
);
|
||
tipwidgets.add(SizedBox(width: 10.sp,));
|
||
}
|
||
|
||
return Scaffold(
|
||
backgroundColor: Colors.black,
|
||
appBar: MyAppBar(
|
||
centerTitle: '反馈截图',
|
||
actionWdiget: GestureDetector(
|
||
onTap: () {
|
||
if (logic.imgUrl.isEmpty) {
|
||
showOKToast('请上传评价截图:(至少一张)');
|
||
} else {
|
||
logic.sendGoodReview();
|
||
}
|
||
},
|
||
child: Text(
|
||
'提交',
|
||
style: TextStyle(color: Colors.white, fontSize: 16.sp),
|
||
),
|
||
),
|
||
),
|
||
body: Padding(
|
||
padding: EdgeInsets.only(left: 15.sp, right: 15.sp, top: 15.sp),
|
||
child: Column(
|
||
crossAxisAlignment: CrossAxisAlignment.start,
|
||
children: [
|
||
Text(
|
||
'感谢您的支持,请填写评价反馈,我们将在您提交反馈之后的24小时之内核实并发放奖励。',
|
||
style: TextStyle(color: Color(0xFFF7FAFA), fontSize: 16.sp),
|
||
),
|
||
SizedBox(
|
||
height: 12.sp,
|
||
),
|
||
Text(
|
||
'请上传评价截图:(至少一张)',
|
||
style: TextStyle(color: Color(0xFFF7FAFA), fontSize: 16.sp),
|
||
),
|
||
Container(
|
||
margin: EdgeInsets.only(top: 10),
|
||
height: 100.sp,
|
||
child: Row(
|
||
children: widgets,
|
||
),
|
||
),
|
||
// SizedBox(
|
||
// height: 20.sp,
|
||
// ),
|
||
//
|
||
// Text(
|
||
// '示例:',
|
||
// style: TextStyle(color: Color(0xFFF7FAFA), fontSize: 14.sp),
|
||
// ),
|
||
// Container(
|
||
// margin: EdgeInsets.only(top: 10),
|
||
// height: 100.sp,
|
||
// child: Row(
|
||
// children: tipwidgets,
|
||
// ),
|
||
// )
|
||
],
|
||
),
|
||
),
|
||
);
|
||
});
|
||
}
|
||
}
|