import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:kaer_with_panels/app/localization/app_translations.dart'; import 'package:kaer_with_panels/app/routes/app_pages.dart'; import 'package:kaer_with_panels/app/utils/kr_subscribe_navigation_util.dart'; import '../../../widgets/kr_app_text_style.dart'; /// 订阅卡片组件 class KRSubscriptionCard extends StatelessWidget { const KRSubscriptionCard({ super.key, }); @override Widget build(BuildContext context) { return _kr_buildSubscriptionCard(context); } // 构建订阅卡片 Widget _kr_buildSubscriptionCard(BuildContext context) { // 🔧 新增:订阅卡片渲染日志 print('🎴 [SubscriptionCard] 开始构建订阅卡片'); print('🎴 [SubscriptionCard] 卡片颜色: ${Theme.of(context).cardColor}'); print('🎴 [SubscriptionCard] 主题亮度: ${Theme.of(context).brightness}'); print('🎴 [SubscriptionCard] 文本颜色: ${Theme.of(context).textTheme.bodyMedium?.color}'); print('🎴 [SubscriptionCard] ScreenUtil - 12.w=${12.w}, 16.h=${16.h}, 44.w=${44.w}'); // 🔧 关键修复:添加最小高度约束和调试边框 return Container( // 添加最小高度,确保卡片可见 constraints: const BoxConstraints(minHeight: 180), decoration: BoxDecoration( color: Theme.of(context).cardColor, borderRadius: BorderRadius.circular(12.w), // 🔧 添加边框用于调试可见性 border: Border.all( color: Colors.blue.withOpacity(0.3), width: 2, ), ), child: Column( mainAxisSize: MainAxisSize.min, children: [ Container( width: 44.w, height: 44.w, margin: EdgeInsets.only(top: 16.h), decoration: BoxDecoration( color: Colors.blue.withOpacity(0.1), shape: BoxShape.circle, ), child: Icon( Icons.language, color: Colors.blue, size: 26.w, ), ), SizedBox(height: 12.h), Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), child: Text( AppTranslations.kr_home.subscriptionDescription, textAlign: TextAlign.center, style: KrAppTextStyle( fontSize: 14, fontWeight: FontWeight.w400, // 🔧 关键修复:确保文本颜色可见 color: Theme.of(context).brightness == Brightness.dark ? Colors.white : Colors.black87, ), ), ), SizedBox(height: 16.h), Padding( padding: EdgeInsets.fromLTRB(16.w, 0, 16.w, 16.h), child: SizedBox( width: double.infinity, height: 42.h, child: ElevatedButton( onPressed: () => KRSubscribeNavigationUtil.navigateToPurchase(tag: 'SubscriptionCard'), style: ElevatedButton.styleFrom( backgroundColor: Colors.blue, elevation: 0, shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(8.r), ), ), child: Text( AppTranslations.kr_home.subscribe, style: KrAppTextStyle( fontSize: 16, fontWeight: FontWeight.w500, color: Colors.white, ), ), ), ), ), ], ), ); } Widget _kr_buildListContainer( BuildContext context, { required Widget child, EdgeInsetsGeometry? margin, bool addBottomPadding = true, }) { return Container( margin: margin ?? EdgeInsets.symmetric(horizontal: 16.w), decoration: BoxDecoration( color: Theme.of(context).cardColor, borderRadius: BorderRadius.circular(12.w), ), child: IntrinsicWidth( child: child, ), ); } }