Files
tuiche/lib/pages/mh_page/issue_preview_widget.dart
2025-08-01 22:25:47 +08:00

98 lines
3.4 KiB
Dart

import 'package:ef/ef.dart';
import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';
import 'package:vbvs_app/common/util/FitTool.dart';
import 'package:vbvs_app/component/tool/ClickableContainer.dart';
import 'package:vbvs_app/component/tool/TopSlideNotification.dart';
import 'package:vbvs_app/controller/mh_controller/issue_controller.dart';
import 'package:vbvs_app/controller/mh_controller/issue_preview_controller.dart';
import '../../common/color/appFontsize.dart';
class IssuePreviewWidget extends GetView<IssuePreviewInfoController> {
final int index;
final IssueListController issueListController;
IssuePreviewWidget({
required this.index,
required this.issueListController,
});
@override
Widget build(BuildContext context) {
return Container(
margin: EdgeInsets.only(left: 30.rpx, right: 30.rpx),
child: InkWell(
onTap: () async {
var article = issueListController.model.issueList![index];
Get.toNamed("/helpArticle", arguments: article);
},
child: Obx(() {
return Container(
alignment: Alignment.center,
width: double.infinity,
constraints: BoxConstraints(minHeight: 119.rpx),
decoration: BoxDecoration(
color: index == issueListController.model.selectedIndex
? Colors.grey[300]
: Colors.transparent,
border: Border(
bottom:
BorderSide(color: const Color(0xFF929699), width: 0.rpx),
),
),
child: Padding(
padding: EdgeInsetsDirectional.fromSTEB(16.rpx, 0, 41.rpx, 0),
child: Row(
mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Flexible(
flex: 9,
child: Align(
alignment: AlignmentDirectional(-1, -1),
child: Text(
issueListController.model.issueList![index]['title'] ??
'',
style: TextStyle(
fontFamily: 'Readex Pro',
color: Color(0xFFFFFFFF),
fontSize: AppFontsize.title_size,
letterSpacing: 0,
),
),
),
),
Expanded(
flex: 1,
child: Align(
alignment: Alignment.centerRight,
child: ClickableContainer(
backgroundColor: Colors.transparent,
highlightColor: Colors.transparent,
padding: EdgeInsets.only(right: 0),
onTap: () {},
child: Container(
height: 30.rpx,
width: 30.rpx,
child: SvgPicture.asset(
'assets/img/icon/expand.svg',
color: Colors.white,
),
),
),
),
),
],
),
),
);
}),
),
);
}
}