feat: 增加ios支付&ui修改
This commit is contained in:
parent
ca913eb38f
commit
f70b32ec3f
@ -872,6 +872,7 @@ class KRPurchaseMembershipController extends GetxController {
|
|||||||
label: 'Hi快VPN 服务',
|
label: 'Hi快VPN 服务',
|
||||||
amount: kr_getPlanPrice(
|
amount: kr_getPlanPrice(
|
||||||
kr_plans[kr_selectedPlanIndex.value],
|
kr_plans[kr_selectedPlanIndex.value],
|
||||||
|
discountIndex: kr_selectedDiscountIndex.value
|
||||||
).toStringAsFixed(2),
|
).toStringAsFixed(2),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
|
|||||||
@ -47,102 +47,100 @@ class KRPurchaseMembershipView extends GetView<KRPurchaseMembershipController>
|
|||||||
padding: const EdgeInsets.only(left: 20),
|
padding: const EdgeInsets.only(left: 20),
|
||||||
child: Stack(
|
child: Stack(
|
||||||
children: [
|
children: [
|
||||||
Padding(
|
Obx(() {
|
||||||
padding: EdgeInsets.only(bottom: 80.0),
|
return Positioned.fill(
|
||||||
child: Obx(() => SingleChildScrollView(
|
bottom: 90.0,
|
||||||
child: Column(
|
child: SingleChildScrollView(
|
||||||
children: [
|
child: Column(
|
||||||
/*_kr_buildAccountSection(context),*/
|
children: [
|
||||||
if (controller.kr_isLoading.value)
|
/*_kr_buildAccountSection(context),*/
|
||||||
Container(
|
if (controller.kr_isLoading.value)
|
||||||
height:
|
Container(
|
||||||
MediaQuery.of(context).size.height * 0.5,
|
height: MediaQuery.of(context).size.height * 0.5,
|
||||||
child: Center(
|
child: Center(
|
||||||
child: KRSimpleLoading(
|
child: KRSimpleLoading(
|
||||||
color: Colors.white,
|
color: Colors.white,
|
||||||
size: 50.0,
|
size: 50.0,
|
||||||
),
|
|
||||||
),
|
|
||||||
)
|
|
||||||
else if (controller.kr_plans.isEmpty)
|
|
||||||
Container(
|
|
||||||
height:
|
|
||||||
MediaQuery.of(context).size.height * 0.5,
|
|
||||||
child: Center(
|
|
||||||
child: Text(
|
|
||||||
AppTranslations
|
|
||||||
.kr_purchaseMembership.noData,
|
|
||||||
style: KrAppTextStyle(
|
|
||||||
fontSize: 14,
|
|
||||||
color: Theme.of(context)
|
|
||||||
.textTheme
|
|
||||||
.bodyMedium
|
|
||||||
?.color,
|
|
||||||
),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
)
|
|
||||||
else
|
|
||||||
Container(
|
|
||||||
margin: EdgeInsets.only(
|
|
||||||
left: 40.0 - 20, right: 40.0),
|
|
||||||
child: Column(
|
|
||||||
children: [
|
|
||||||
// 套餐选择部分
|
|
||||||
Container(
|
|
||||||
padding: EdgeInsets.all(0.0),
|
|
||||||
child: Column(
|
|
||||||
crossAxisAlignment:
|
|
||||||
CrossAxisAlignment.start,
|
|
||||||
children: [
|
|
||||||
Column(
|
|
||||||
// 使用 List.generate 动态创建卡片列表
|
|
||||||
children: List.generate(
|
|
||||||
controller.kr_getTotalOptionsCount(
|
|
||||||
controller.kr_plans[controller
|
|
||||||
.kr_selectedPlanIndex
|
|
||||||
.value]),
|
|
||||||
(index) {
|
|
||||||
final plan = controller
|
|
||||||
.kr_plans[
|
|
||||||
controller
|
|
||||||
.kr_selectedPlanIndex
|
|
||||||
.value];
|
|
||||||
final discountIndex =
|
|
||||||
plan.kr_discount.isEmpty
|
|
||||||
? null
|
|
||||||
: index;
|
|
||||||
// 使用 Padding 来为每个卡片添加底部的间距,模拟 mainAxisSpacing
|
|
||||||
return Padding(
|
|
||||||
padding: EdgeInsets.only(
|
|
||||||
bottom: 8.0),
|
|
||||||
child: SizedBox(
|
|
||||||
height: 130.0,
|
|
||||||
child:
|
|
||||||
_kr_buildPlanOptionCard(
|
|
||||||
plan,
|
|
||||||
controller
|
|
||||||
.kr_selectedPlanIndex
|
|
||||||
.value,
|
|
||||||
discountIndex,
|
|
||||||
context,
|
|
||||||
index,
|
|
||||||
),
|
|
||||||
),
|
|
||||||
);
|
|
||||||
},
|
|
||||||
),
|
|
||||||
),
|
|
||||||
],
|
|
||||||
),
|
|
||||||
),
|
|
||||||
],
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
],
|
)
|
||||||
),
|
else if (controller.kr_plans.isEmpty)
|
||||||
)),
|
Container(
|
||||||
),
|
height: MediaQuery.of(context).size.height * 0.5,
|
||||||
|
child: Center(
|
||||||
|
child: Text(
|
||||||
|
AppTranslations.kr_purchaseMembership.noData,
|
||||||
|
style: KrAppTextStyle(
|
||||||
|
fontSize: 14,
|
||||||
|
color: Theme.of(context)
|
||||||
|
.textTheme
|
||||||
|
.bodyMedium
|
||||||
|
?.color,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
else
|
||||||
|
Container(
|
||||||
|
margin:
|
||||||
|
EdgeInsets.only(left: 40.0 - 20, right: 40.0),
|
||||||
|
child: Column(
|
||||||
|
children: [
|
||||||
|
// 套餐选择部分
|
||||||
|
Container(
|
||||||
|
padding: EdgeInsets.all(0.0),
|
||||||
|
child: Column(
|
||||||
|
crossAxisAlignment:
|
||||||
|
CrossAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
Column(
|
||||||
|
// 使用 List.generate 动态创建卡片列表
|
||||||
|
children: List.generate(
|
||||||
|
controller.kr_getTotalOptionsCount(
|
||||||
|
controller.kr_plans[controller
|
||||||
|
.kr_selectedPlanIndex
|
||||||
|
.value]),
|
||||||
|
(index) {
|
||||||
|
final plan = controller.kr_plans[
|
||||||
|
controller
|
||||||
|
.kr_selectedPlanIndex
|
||||||
|
.value];
|
||||||
|
final discountIndex =
|
||||||
|
plan.kr_discount.isEmpty
|
||||||
|
? null
|
||||||
|
: index;
|
||||||
|
// 使用 Padding 来为每个卡片添加底部的间距,模拟 mainAxisSpacing
|
||||||
|
return Padding(
|
||||||
|
padding: EdgeInsets.only(
|
||||||
|
bottom: 8.0),
|
||||||
|
child: SizedBox(
|
||||||
|
height: 130.0,
|
||||||
|
child:
|
||||||
|
_kr_buildPlanOptionCard(
|
||||||
|
plan,
|
||||||
|
controller
|
||||||
|
.kr_selectedPlanIndex
|
||||||
|
.value,
|
||||||
|
discountIndex,
|
||||||
|
context,
|
||||||
|
index,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}),
|
||||||
Positioned(
|
Positioned(
|
||||||
top: 160.0, // 距离顶部的距离
|
top: 160.0, // 距离顶部的距离
|
||||||
right: 10.0, // 固定在右侧 20.w 的位置
|
right: 10.0, // 固定在右侧 20.w 的位置
|
||||||
@ -151,7 +149,7 @@ class KRPurchaseMembershipView extends GetView<KRPurchaseMembershipController>
|
|||||||
imageType: ImageType.svg,
|
imageType: ImageType.svg,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
const HIHelpEntrance(isLight: false)
|
const HIHelpEntrance(isLight: false)
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user