Files
kuaishai2/lib/shared/widgets/common_card.dart
Developer 5d28bf631b chore(project): 初始化项目基础配置文件
- 添加 CodeGraph、Android 和通用 gitignore 配置
- 创建项目元数据文件跟踪 Flutter 项目属性
- 添加 Codex AI 指导文档 AGENTS.md 说明项目架构
- 配置代码分析选项 analysis_options.yaml
- 设置 Android 应用清单权限和 Kiosk 模式配置
- 实现中英文国际化支持 AppLocalizations
- 配置 GoRouter 应用路由导航
- 创建明亮工业控制风格的主题配置 AppTheme
2026-06-04 11:19:44 +08:00

48 lines
1.4 KiB
Dart

import 'package:flutter/material.dart';
import '../../core/theme/app_theme.dart';
/// 通用卡片组件 - 明亮工业风格
class CommonCard extends StatelessWidget {
final Widget child;
final VoidCallback? onTap;
final bool selected;
final EdgeInsetsGeometry? padding;
final EdgeInsetsGeometry? margin;
const CommonCard({
super.key,
required this.child,
this.onTap,
this.selected = false,
this.padding,
this.margin,
});
@override
Widget build(BuildContext context) {
return Container(
margin: margin ?? const EdgeInsets.symmetric(horizontal: 16, vertical: 8),
child: Material(
color: selected ? AppTheme.bgCardHover : AppTheme.bgCard,
borderRadius: BorderRadius.circular(AppTheme.radiusMd),
elevation: 0,
child: InkWell(
onTap: onTap,
borderRadius: BorderRadius.circular(AppTheme.radiusMd),
child: Container(
padding: padding ?? const EdgeInsets.all(16),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(AppTheme.radiusMd),
border: selected
? Border.all(color: AppTheme.primaryColor, width: 2)
: Border.all(color: AppTheme.borderLight, width: 1),
boxShadow: AppTheme.shadowCard,
),
child: child,
),
),
),
);
}
}