diff --git a/lib/pages/upgradeCard/upgrade_card_page_v2.dart b/lib/pages/upgradeCard/upgrade_card_page_v2.dart new file mode 100644 index 0000000..cb05b16 --- /dev/null +++ b/lib/pages/upgradeCard/upgrade_card_page_v2.dart @@ -0,0 +1,93 @@ +import 'package:flutter/material.dart'; +import 'package:recook/pages/upgradeCard/upgrade_card_unused_view.dart'; +import 'package:recook/pages/upgradeCard/upgrade_card_used_view.dart'; +import 'package:recook/widgets/recook/recook_scaffold.dart'; +import 'package:recook/constants/header.dart'; +import 'package:recook/widgets/recook_indicator.dart'; +import 'package:velocity_x/velocity_x.dart'; + +class UpgradeCardPageV2 extends StatefulWidget { + UpgradeCardPageV2({Key key}) : super(key: key); + + @override + _UpgradeCardPageV2State createState() => _UpgradeCardPageV2State(); +} + +class _UpgradeCardPageV2State extends State + with TickerProviderStateMixin { + TabController _tabController; + + // placeholder when no data + _noDataWidget(title) { + return Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Spacer(flex: 1), + Image.asset( + "assets/shop_upgrade_code_page_nodata.png", + width: 99, + height: 60, + ), + Container(height: 20), + Text( + title, + style: TextStyle(color: Color(0xff666666), fontSize: 13), + ), + Spacer(flex: 3), + ], + ), + ); + } + + @override + void initState() { + super.initState(); + _tabController = TabController(length: 2, vsync: this); + } + + @override + void dispose() { + _tabController?.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return RecookScaffold( + title: '权益卡', + appBarBottom: TabBar( + controller: _tabController, + labelColor: Color(0xFFDB2D2D), + unselectedLabelColor: Color(0xFF333333), + labelStyle: TextStyle( + fontSize: 13.sp, + fontWeight: FontWeight.w600, + ), + unselectedLabelStyle: TextStyle( + fontSize: 13.sp, + fontWeight: FontWeight.w400, + ), + indicatorSize: TabBarIndicatorSize.label, + indicator: RecookIndicator( + borderSide: BorderSide( + width: rSize(3), + color: Color(0xFFDB2D2D), + ), + ), + tabs: [ + Tab(text: '未使用'), + Tab(text: '已使用'), + ], + ), + body: TabBarView( + controller: _tabController, + children: [ + UpgradeUnusedView(), + UpgradeUsedView(), + ], + ).material(color: Color(0xFFF5F5F5)), + ); + } +} diff --git a/lib/pages/upgradeCard/upgrade_card_unused_view.dart b/lib/pages/upgradeCard/upgrade_card_unused_view.dart new file mode 100644 index 0000000..0a864b9 --- /dev/null +++ b/lib/pages/upgradeCard/upgrade_card_unused_view.dart @@ -0,0 +1,30 @@ +import 'package:flutter/material.dart'; +import 'package:recook/widgets/refresh_widget.dart'; + +class UpgradeUnusedView extends StatefulWidget { + UpgradeUnusedView({Key key}) : super(key: key); + + @override + _UpgradeUnusedViewState createState() => _UpgradeUnusedViewState(); +} + +class _UpgradeUnusedViewState extends State { + GSRefreshController _refreshController = + GSRefreshController(initialRefresh: true); + @override + void dispose() { + _refreshController?.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return RefreshWidget( + controller: _refreshController, + onRefresh: () async { + _refreshController.refreshCompleted(); + }, + body: ListView(), + ); + } +} diff --git a/lib/pages/upgradeCard/upgrade_card_used_view.dart b/lib/pages/upgradeCard/upgrade_card_used_view.dart new file mode 100644 index 0000000..8da1f5e --- /dev/null +++ b/lib/pages/upgradeCard/upgrade_card_used_view.dart @@ -0,0 +1,30 @@ +import 'package:flutter/material.dart'; +import 'package:recook/widgets/refresh_widget.dart'; + +class UpgradeUsedView extends StatefulWidget { + UpgradeUsedView({Key key}) : super(key: key); + + @override + _UpgradeUsedViewState createState() => _UpgradeUsedViewState(); +} + +class _UpgradeUsedViewState extends State { + GSRefreshController _refreshController = + GSRefreshController(initialRefresh: true); + @override + void dispose() { + _refreshController?.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return RefreshWidget( + controller: _refreshController, + onRefresh: () async { + _refreshController.refreshCompleted(); + }, + body: ListView(), + ); + } +} diff --git a/lib/pages/user/widget/capital_view.dart b/lib/pages/user/widget/capital_view.dart index b720c35..74ae5c2 100644 --- a/lib/pages/user/widget/capital_view.dart +++ b/lib/pages/user/widget/capital_view.dart @@ -9,8 +9,10 @@ import 'package:extended_text/extended_text.dart'; import 'package:flutter/material.dart'; +import 'package:get/get.dart'; import 'package:recook/base/base_store_state.dart'; import 'package:recook/constants/header.dart'; +import 'package:recook/pages/upgradeCard/upgrade_card_page_v2.dart'; import 'package:recook/pages/user/banlance/user_balance_page.dart'; import 'package:recook/utils/custom_route.dart'; import 'package:recook/widgets/alert.dart'; @@ -170,8 +172,7 @@ class _CapitalViewState extends BaseStoreState { .cards .toInt() .toString(), onTap: () { - // push(RouteName.MY_FAVORITE_PAGE); - push(RouteName.UPGRADE_CARD_PAGE); + Get.to(() => UpgradeCardPageV2()); }), ], ),