Some checks failed
Build Android APK / 编译 libcore.aar (push) Has been cancelled
Build Android APK / 编译 Android APK (release) (push) Has been cancelled
Build Android APK / 创建 GitHub Release (push) Has been cancelled
Build Multi-Platform / 编译 libcore (iOS/tvOS) (push) Has been cancelled
Build Multi-Platform / 编译 libcore (Android) (push) Has been cancelled
Build Multi-Platform / 编译 libcore (Windows) (push) Has been cancelled
Build Multi-Platform / 编译 libcore (macOS) (push) Has been cancelled
Build Multi-Platform / 编译 libcore (Linux) (push) Has been cancelled
Build Multi-Platform / 构建 Android APK (push) Has been cancelled
Build Multi-Platform / 构建 Windows (push) Has been cancelled
Build Multi-Platform / 构建 macOS (push) Has been cancelled
Build Multi-Platform / 构建 Linux (push) Has been cancelled
Build Multi-Platform / 构建 iOS (push) Has been cancelled
Build Multi-Platform / 创建 Release (push) Has been cancelled
Build Windows / 编译 libcore (Windows) (push) Has been cancelled
Build Windows / build (push) Has been cancelled
(cherry picked from commit 010405edda74bdb0251dcff2e32482edae2c9976)
116 lines
3.5 KiB
Dart
Executable File
116 lines
3.5 KiB
Dart
Executable File
import 'package:flutter/material.dart';
|
||
import 'package:get/get.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) {
|
||
// 🔧 关键修复:完全移除 ScreenUtil,使用固定像素值避免缩放问题
|
||
return Container(
|
||
// 添加固定高度,确保卡片可见
|
||
constraints: const BoxConstraints(minHeight: 200),
|
||
padding: const EdgeInsets.all(16),
|
||
decoration: BoxDecoration(
|
||
color: Theme.of(context).cardColor,
|
||
borderRadius: BorderRadius.circular(12),
|
||
),
|
||
child: Column(
|
||
mainAxisSize: MainAxisSize.min,
|
||
children: [
|
||
// 图标
|
||
Container(
|
||
width: 48,
|
||
height: 48,
|
||
decoration: BoxDecoration(
|
||
color: Colors.blue.withOpacity(0.1),
|
||
shape: BoxShape.circle,
|
||
),
|
||
child: const Icon(
|
||
Icons.language,
|
||
color: Colors.blue,
|
||
size: 28,
|
||
),
|
||
),
|
||
const SizedBox(height: 16),
|
||
// 描述文字
|
||
Padding(
|
||
padding: const EdgeInsets.symmetric(horizontal: 16),
|
||
child: Text(
|
||
AppTranslations.kr_home.subscriptionDescription,
|
||
textAlign: TextAlign.center,
|
||
style: TextStyle(
|
||
fontSize: 15,
|
||
fontWeight: FontWeight.w400,
|
||
height: 1.5,
|
||
// 🔧 关键修复:确保文本颜色可见
|
||
color: Theme.of(context).brightness == Brightness.dark
|
||
? Colors.white
|
||
: Colors.black87,
|
||
),
|
||
),
|
||
),
|
||
const SizedBox(height: 20),
|
||
// 订阅按钮
|
||
SizedBox(
|
||
width: double.infinity,
|
||
height: 46,
|
||
child: ElevatedButton(
|
||
onPressed: () {
|
||
KRSubscribeNavigationUtil.navigateToPurchase(tag: 'SubscriptionCard');
|
||
},
|
||
style: ElevatedButton.styleFrom(
|
||
backgroundColor: Colors.blue,
|
||
elevation: 0,
|
||
shape: RoundedRectangleBorder(
|
||
borderRadius: BorderRadius.circular(8),
|
||
),
|
||
),
|
||
child: Text(
|
||
AppTranslations.kr_home.subscribe,
|
||
style: const TextStyle(
|
||
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),
|
||
decoration: BoxDecoration(
|
||
color: Theme.of(context).cardColor,
|
||
borderRadius: BorderRadius.circular(12),
|
||
),
|
||
child: IntrinsicWidth(
|
||
child: child,
|
||
),
|
||
);
|
||
}
|
||
} |