circle_app/circle_app/lib/app/good_reviews/view.dart

164 lines
4.9 KiB
Dart
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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,
// ),
// )
],
),
),
);
});
}
}