import 'package:flutter/material.dart'; import 'package:vbvs_app/common/util/FitTool.dart'; class Weekdatashowwidget extends StatefulWidget { final Widget widget1; // 第一个传入的 widget final Widget widget2; // 第二个传入的 widget final Widget widget3; // 第三个传入的 widget // final Widget widget4; // 第四个传入的 widget final MainAxisAlignment alignment; // 控制 Row 的对齐方式 const Weekdatashowwidget({ super.key, required this.widget1, required this.widget2, required this.widget3, // required this.widget4, this.alignment = MainAxisAlignment.start, // 默认左对齐 }); @override State createState() => _WeekdatashowwidgetState(); } class _WeekdatashowwidgetState extends State { @override void setState(VoidCallback callback) { super.setState(callback); } @override void initState() { super.initState(); } @override void dispose() { super.dispose(); } @override Widget build(BuildContext context) { return Container( width: double.infinity, height: 66.rpx, decoration: BoxDecoration(), child: SingleChildScrollView( scrollDirection: Axis.horizontal, // 设置横向滚动 child: Row( mainAxisAlignment: widget.alignment, // 根据传入的 alignment 控制对齐方式 children: [ // 放入传入的 widget1 Container( width: MediaQuery.sizeOf(context).width * 0.45, // 固定宽度 decoration: BoxDecoration(), child: Align( alignment: Alignment.centerLeft, // widget.alignment == MainAxisAlignment.start // ? Alignment.centerLeft // : widget.alignment == MainAxisAlignment.center // ? Alignment.center // : Alignment.centerRight, // 根据传入的 alignment 设置对齐 child: widget.widget1, // 显示传入的 widget1 ), ), // 放入传入的 widget2 Container( width: MediaQuery.sizeOf(context).width * 0.2, // 固定宽度 decoration: BoxDecoration(), child: Align( alignment: widget.alignment == MainAxisAlignment.start ? Alignment.centerLeft : widget.alignment == MainAxisAlignment.center ? Alignment.center : Alignment.centerRight, // 同样设置对齐 child: widget.widget2, // 显示传入的 widget2 ), ), // 放入传入的 widget3 Container( width: MediaQuery.sizeOf(context).width * 0.2, // 固定宽度 decoration: BoxDecoration(), child: Align( alignment: widget.alignment == MainAxisAlignment.start ? Alignment.centerLeft : widget.alignment == MainAxisAlignment.center ? Alignment.center : Alignment.centerRight, // 同样设置对齐 child: widget.widget3, // 显示传入的 widget3 ), ), // 放入传入的 widget4 // Container( // width: MediaQuery.sizeOf(context).width * 0.25, // 固定宽度 // decoration: BoxDecoration(), // child: Align( // alignment: widget.alignment == MainAxisAlignment.start // ? Alignment.centerLeft // : widget.alignment == MainAxisAlignment.center // ? Alignment.center // : Alignment.centerRight, // 同样设置对齐 // child: widget.widget4, // 显示传入的 widget4 // ), // ), ], ), ), ); } }