|
@@ -34,16 +34,11 @@ class SchedulePopupState extends State<SchedulePopup> {
|
|
|
|
|
|
@override
|
|
|
Widget build(BuildContext context) {
|
|
|
- return Material(
|
|
|
- child: ListView(
|
|
|
- shrinkWrap: true,
|
|
|
- children: [
|
|
|
- Container(
|
|
|
- padding: const EdgeInsets.all(10),
|
|
|
- child: _buildScheduleList(),
|
|
|
- ),
|
|
|
- ],
|
|
|
- ),
|
|
|
+ return ListView(
|
|
|
+ shrinkWrap: true,
|
|
|
+ children: [
|
|
|
+ _buildScheduleDetailCard(),
|
|
|
+ ],
|
|
|
);
|
|
|
}
|
|
|
|
|
@@ -64,101 +59,121 @@ class SchedulePopupState extends State<SchedulePopup> {
|
|
|
required VoidCallback onPressed,
|
|
|
required IconData icon,
|
|
|
}) {
|
|
|
- return IconButton(
|
|
|
- splashRadius: 20,
|
|
|
- onPressed: onPressed,
|
|
|
- icon: _buildIcon(
|
|
|
- icon: icon,
|
|
|
- size: 20,
|
|
|
+ return Material(
|
|
|
+ color: Colors.transparent,
|
|
|
+ child: IconButton(
|
|
|
+ splashRadius: 20,
|
|
|
+ onPressed: onPressed,
|
|
|
+ icon: _buildIcon(
|
|
|
+ icon: icon,
|
|
|
+ size: 20,
|
|
|
+ ),
|
|
|
),
|
|
|
);
|
|
|
}
|
|
|
|
|
|
Map<int, String> weekMap = {
|
|
|
- 1: '星期一',
|
|
|
- 2: '星期二',
|
|
|
- 3: '星期三',
|
|
|
- 4: '星期四',
|
|
|
- 5: '星期五',
|
|
|
- 6: '星期六',
|
|
|
- 7: '星期天',
|
|
|
+ 1: '周一',
|
|
|
+ 2: '周二',
|
|
|
+ 3: '周三',
|
|
|
+ 4: '周四',
|
|
|
+ 5: '周五',
|
|
|
+ 6: '周六',
|
|
|
+ 7: '周日',
|
|
|
};
|
|
|
|
|
|
/// 日程卡片视图列表
|
|
|
- Widget _buildScheduleList() {
|
|
|
+ Widget _buildScheduleDetailCard() {
|
|
|
final currentDate = widget.scheduleData.day;
|
|
|
return Column(
|
|
|
mainAxisSize: MainAxisSize.min,
|
|
|
children: [
|
|
|
- _buildScheduleHeadActionBar(),
|
|
|
- _buildScheduleLayoutItem(
|
|
|
- iconWidget: const SizedBox(
|
|
|
- width: 18,
|
|
|
- child: CircleAvatar(
|
|
|
- radius: 6,
|
|
|
- backgroundColor: Colors.red,
|
|
|
- ),
|
|
|
- ),
|
|
|
- scheduleItemWidget: const Text(
|
|
|
- '杏聆荟每日站会',
|
|
|
- ),
|
|
|
- ),
|
|
|
- _buildScheduleLayoutItem(
|
|
|
- iconWidget: _buildIcon(
|
|
|
- icon: Icons.av_timer_rounded,
|
|
|
- size: 18,
|
|
|
- ),
|
|
|
- scheduleItemWidget: Text(
|
|
|
- '${currentDate.month}月${currentDate.day}日 周 ${weekMap[currentDate.weekday]!} 10:00-10:30',
|
|
|
- ),
|
|
|
- ),
|
|
|
- _buildScheduleLayoutItem(
|
|
|
- iconWidget: _buildIcon(
|
|
|
- icon: Icons.personal_injury_rounded,
|
|
|
- size: 18,
|
|
|
- ),
|
|
|
- scheduleItemWidget: const Text('组织人'),
|
|
|
- ),
|
|
|
- _buildScheduleLayoutItem(
|
|
|
- iconWidget: _buildIcon(
|
|
|
- icon: Icons.people_alt_outlined,
|
|
|
- size: 18,
|
|
|
- ),
|
|
|
- scheduleItemWidget: Row(
|
|
|
- mainAxisSize: MainAxisSize.max,
|
|
|
- children: const [
|
|
|
- Text(
|
|
|
- '邀请7人,5人接受',
|
|
|
+ Padding(
|
|
|
+ padding: const EdgeInsets.symmetric(horizontal: 8),
|
|
|
+ child: Column(
|
|
|
+ children: [
|
|
|
+ _buildScheduleHeadActionBar(),
|
|
|
+ _buildScheduleLayoutItem(
|
|
|
+ iconWidget: const SizedBox(
|
|
|
+ width: 18,
|
|
|
+ child: CircleAvatar(
|
|
|
+ radius: 6,
|
|
|
+ backgroundColor: Colors.red,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ scheduleItemWidget: const Text(
|
|
|
+ '杏聆荟每日站会',
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ _buildScheduleLayoutItem(
|
|
|
+ iconWidget: _buildIcon(
|
|
|
+ icon: Icons.av_timer_rounded,
|
|
|
+ size: 18,
|
|
|
+ ),
|
|
|
+ scheduleItemWidget: Text(
|
|
|
+ '${currentDate.month}月${currentDate.day}日 ${weekMap[currentDate.weekday]!} 10:00-10:30',
|
|
|
+ ),
|
|
|
),
|
|
|
- Expanded(child: SizedBox()),
|
|
|
- Text(
|
|
|
- '查看全部',
|
|
|
- style: TextStyle(
|
|
|
- fontSize: 12,
|
|
|
- color: Colors.grey,
|
|
|
+ _buildScheduleLayoutItem(
|
|
|
+ iconWidget: _buildIcon(
|
|
|
+ icon: Icons.personal_injury_rounded,
|
|
|
+ size: 18,
|
|
|
),
|
|
|
+ scheduleItemWidget: const Text('组织人'),
|
|
|
+ ),
|
|
|
+ _buildScheduleLayoutItem(
|
|
|
+ iconWidget: _buildIcon(
|
|
|
+ icon: Icons.people_alt_outlined,
|
|
|
+ size: 18,
|
|
|
+ ),
|
|
|
+ scheduleItemWidget: Row(
|
|
|
+ mainAxisSize: MainAxisSize.max,
|
|
|
+ children: const [
|
|
|
+ Text(
|
|
|
+ '邀请7人,5人接受',
|
|
|
+ ),
|
|
|
+ Expanded(child: SizedBox()),
|
|
|
+ Text(
|
|
|
+ '查看全部',
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 12,
|
|
|
+ color: Colors.grey,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ Row(
|
|
|
+ mainAxisAlignment: MainAxisAlignment.start,
|
|
|
+ children: [
|
|
|
+ const SizedBox(
|
|
|
+ width: 30,
|
|
|
+ ),
|
|
|
+ _buildHeadPortraitItem(),
|
|
|
+ _buildHeadPortraitItem(),
|
|
|
+ _buildHeadPortraitItem(),
|
|
|
+ _buildHeadPortraitItem(),
|
|
|
+ _buildHeadPortraitItem(),
|
|
|
+ ],
|
|
|
),
|
|
|
],
|
|
|
),
|
|
|
),
|
|
|
- Row(
|
|
|
- mainAxisAlignment: MainAxisAlignment.start,
|
|
|
- children: [
|
|
|
- const SizedBox(
|
|
|
- width: 30,
|
|
|
- ),
|
|
|
- _buildHeadPortraitItem(),
|
|
|
- _buildHeadPortraitItem(),
|
|
|
- _buildHeadPortraitItem(),
|
|
|
- _buildHeadPortraitItem(),
|
|
|
- _buildHeadPortraitItem(),
|
|
|
- ],
|
|
|
- ),
|
|
|
const SizedBox(
|
|
|
height: 15,
|
|
|
),
|
|
|
- const Divider(),
|
|
|
- _buildSchedulebottomActionBar(),
|
|
|
+ Container(
|
|
|
+ decoration: const BoxDecoration(
|
|
|
+ border: Border(
|
|
|
+ top: BorderSide(
|
|
|
+ color: Color.fromRGBO(238, 238, 238, 1),
|
|
|
+ width: 1,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ padding: const EdgeInsets.symmetric(horizontal: 8),
|
|
|
+ child: _buildSchedulebottomActionBar(),
|
|
|
+ ),
|
|
|
],
|
|
|
);
|
|
|
}
|
|
@@ -166,7 +181,7 @@ class SchedulePopupState extends State<SchedulePopup> {
|
|
|
/// 日程卡片顶部操作栏
|
|
|
Widget _buildScheduleHeadActionBar() {
|
|
|
return SizedBox(
|
|
|
- height: 35,
|
|
|
+ height: 50,
|
|
|
child: Row(
|
|
|
mainAxisAlignment: MainAxisAlignment.end,
|
|
|
children: [
|
|
@@ -194,14 +209,17 @@ class SchedulePopupState extends State<SchedulePopup> {
|
|
|
/// 日程卡片底部操作栏
|
|
|
Widget _buildSchedulebottomActionBar() {
|
|
|
return SizedBox(
|
|
|
- height: 35,
|
|
|
+ height: 50,
|
|
|
child: Row(
|
|
|
children: [
|
|
|
- Container(
|
|
|
- margin: const EdgeInsets.only(
|
|
|
- left: 5,
|
|
|
+ SizedBox(
|
|
|
+ width: 10,
|
|
|
+ ),
|
|
|
+ const Text(
|
|
|
+ '查看详情',
|
|
|
+ style: TextStyle(
|
|
|
+ color: Colors.black54,
|
|
|
),
|
|
|
- child: const Text('查看详情'),
|
|
|
),
|
|
|
Expanded(
|
|
|
child: Row(
|
|
@@ -259,7 +277,7 @@ class SchedulePopupState extends State<SchedulePopup> {
|
|
|
borderRadius: BorderRadius.circular(
|
|
|
4,
|
|
|
),
|
|
|
- color: Color.fromARGB(255, 41, 42, 54),
|
|
|
+ color: const Color.fromARGB(255, 41, 42, 54),
|
|
|
),
|
|
|
child: const FlutterLogo(
|
|
|
size: 28,
|