From 7811bc41c50cdd16b56e84d0a166d7a878c1f1a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=AB=A0=E6=96=87=E8=BD=A9?= <12812285557@qq.com> Date: Fri, 12 Nov 2021 20:38:00 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A6=96=E9=A1=B5=E8=BF=9B=E5=BA=A680%?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/icons/shop_close.png | Bin 0 -> 905 bytes assets/icons/shop_favorfill.png | Bin 0 -> 3761 bytes assets/icons/shop_torb.png | Bin 0 -> 951 bytes assets/icons/test_kingcion.png | Bin 0 -> 18795 bytes lib/const/resource.dart | 15 + lib/pages/splash/splash_page.dart | 49 +-- lib/ui/market/goods/goods_card.dart | 25 +- lib/ui/market/market_page.dart | 514 +++++++++++++++-------- lib/widget/home/home_sliver_app_bar.dart | 2 +- 9 files changed, 392 insertions(+), 213 deletions(-) create mode 100644 assets/icons/shop_close.png create mode 100644 assets/icons/shop_favorfill.png create mode 100644 assets/icons/shop_torb.png create mode 100644 assets/icons/test_kingcion.png diff --git a/assets/icons/shop_close.png b/assets/icons/shop_close.png new file mode 100644 index 0000000000000000000000000000000000000000..e7dd1d20ca21bd1564556b0f7000c54861a556a8 GIT binary patch literal 905 zcmV;419tq0P)Px##!yUDMf>~v|NsB$>gwz3>*C_#-QC^H%*@cx(9zM+!NI|{wzjvox45{ttgNiG zw6vn4qNu2-oSdAHkdTp)k%oqbh=_=LdwYL>e}I61fq{W|czAq#e1d|4gM)*Mi;Ikm zjE#+rl9G~>larK`l%=JmrlzK;si~{0tF5iAuCA`GuCBDSw6?akx3{;%#KgtL#m2_Q z$H&LW$jH&r(bLn@>+9?8?(XvP^7Hfa^z`)g_4W4l_V@Sq`}_O+{QUm@{{R2~|NsAO zgIX5=002RBQchFl<>uz+=;`U{>g((4?CkCB?(gsL@bU5S@$&NW^7Hfa^z`)h_V)Jn z_V@Sq_xbtx`T6?#{Qdp?{r&#_{{H^{_N9dv0006cNkl2`uJ5QRrvzD2lxQOBHRYG-RUCxxX}L_(;NJmOu=ZlFAk<^_H%;>Xl+PrQnu;46CIY z<5VlD5CW3OHvdknZC+~nLQp5$L+<-t%XE&wiKn96d*_=(|iF%nG0g(P^>#pl}Six_=l{W<3c6BkIHA6~9) zbJhtmIy2K=FZj{?83KWLIy81C>!r;Pw_hyBGy)54x`>z>d}VLCcaF~-rTuhpthYhX zT6G~M!QwmP15Y_Kj+3syxa2}=qAd(OBEbIUqZlaSkI7A5xIj+|q!1@+kN3`Q_4xhg z!7xwO1YxigWH49kOig?HaiKiCZ|vP$7qiSl5q0R^a$|2+gYO^P)c`dtLIpn-KNIjx zNvsOgC5Ox13dfrGH%F*Cv}8xLKeL?U(XnQInN!Uq6Agr9IV2lP@`>fn zw)LECBXu?sw52N?tT+RFKe@XhNSO37w|2 zASrTa$}N(@kER4ADTZmva+(H#rd6S7nrPZLnnseQrKM@EY1(|E3kRaB528yL?>Z=R fy$;IAu7kb+oko$g`tt~;00000NkvXXu0mjf`oHR= literal 0 HcmV?d00001 diff --git a/assets/icons/shop_favorfill.png b/assets/icons/shop_favorfill.png new file mode 100644 index 0000000000000000000000000000000000000000..5d59d70d41e98f7cde8bada355ecc7f533228b62 GIT binary patch literal 3761 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 bUZ?yYUZgQkd+bk%00000NkvXXu0mjfDb?Uq literal 0 HcmV?d00001 diff --git a/assets/icons/shop_torb.png b/assets/icons/shop_torb.png new file mode 100644 index 0000000000000000000000000000000000000000..e6130e2d767557cc66f47cf8335601d2b487ffce GIT binary patch literal 951 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 GO!*78q3uur literal 0 HcmV?d00001 diff --git a/lib/const/resource.dart b/lib/const/resource.dart index b6c27f91..c2a7f316 100644 --- a/lib/const/resource.dart +++ b/lib/const/resource.dart @@ -340,6 +340,14 @@ class R { /// ![preview](file:///Users/datang/aku_community/assets/icons/shop_car.png) static const String ASSETS_ICONS_SHOP_CAR_PNG = 'assets/icons/shop_car.png'; + /// ![preview](file:///Users/datang/aku_community/assets/icons/shop_close.png) + static const String ASSETS_ICONS_SHOP_CLOSE_PNG = + 'assets/icons/shop_close.png'; + + /// ![preview](file:///Users/datang/aku_community/assets/icons/shop_favorfill.png) + static const String ASSETS_ICONS_SHOP_FAVORFILL_PNG = + 'assets/icons/shop_favorfill.png'; + /// ![preview](file:///Users/datang/aku_community/assets/icons/shop_laba.png) static const String ASSETS_ICONS_SHOP_LABA_PNG = 'assets/icons/shop_laba.png'; @@ -359,6 +367,9 @@ class R { static const String ASSETS_ICONS_SHOP_SEARCH_PNG = 'assets/icons/shop_search.png'; + /// ![preview](file:///Users/datang/aku_community/assets/icons/shop_torb.png) + static const String ASSETS_ICONS_SHOP_TORB_PNG = 'assets/icons/shop_torb.png'; + /// ![preview](file:///Users/datang/aku_community/assets/icons/system_notice.png) static const String ASSETS_ICONS_SYSTEM_NOTICE_PNG = 'assets/icons/system_notice.png'; @@ -403,6 +414,10 @@ class R { static const String ASSETS_ICONS_TABBAR_USER_NO_PNG = 'assets/icons/tabbar_user_no.png'; + /// ![preview](file:///Users/datang/aku_community/assets/icons/test_kingcion.png) + static const String ASSETS_ICONS_TEST_KINGCION_PNG = + 'assets/icons/test_kingcion.png'; + /// ![preview](file:///Users/datang/aku_community/assets/icons/tool_bmdh.png) static const String ASSETS_ICONS_TOOL_BMDH_PNG = 'assets/icons/tool_bmdh.png'; diff --git a/lib/pages/splash/splash_page.dart b/lib/pages/splash/splash_page.dart index 75fae8ff..16ab75fd 100644 --- a/lib/pages/splash/splash_page.dart +++ b/lib/pages/splash/splash_page.dart @@ -148,53 +148,48 @@ class _SplashPageState extends State { children: [ Align( alignment: Alignment.topCenter, - child:Row( + child: + Row( mainAxisAlignment: MainAxisAlignment.center, children: [ Container( + child: Column( mainAxisAlignment: MainAxisAlignment.start, children: [ - 380.hb, + Text('追\n求',style: TextStyle(color:Color(0xFF000000),fontSize: 40.sp,height: 1.15),), ], ), - height: 400, + margin: EdgeInsets.only(top: 450.w), + ), 25.wb, Container( child: - Row( - children: [ Column( - mainAxisAlignment: MainAxisAlignment.end, + mainAxisAlignment: MainAxisAlignment.start, children: [ + Text('更\n便\n捷\n的\n生\n活\n方\n程\n式',style: TextStyle(color:Color(0xFF000000),fontSize: 40.sp,height: 1.15),), - 40.hb, + ], ), - 20.wb, - Column( - children: [ - 580.hb, - Container( - height: 400.w, - width: 2.w, - decoration: BoxDecoration( - gradient: LinearGradient( - colors: [Color(0x99000000), Color(0x00000000)], - begin: Alignment.topCenter, - end: Alignment.bottomCenter), - borderRadius: BorderRadius.circular(2.w), - ), - ), - ], - ) - ], - ), - height: 472, + margin: EdgeInsets.only(top: 530.w), ), + 25.wb, + Container( + height: 400.w, + width: 2.w, + decoration: BoxDecoration( + gradient: LinearGradient( + colors: [Color(0x99000000), Color(0x00000000)], + begin: Alignment.topCenter, + end: Alignment.bottomCenter), + borderRadius: BorderRadius.circular(2.w), + ), + ), ], diff --git a/lib/ui/market/goods/goods_card.dart b/lib/ui/market/goods/goods_card.dart index 11ff3679..8e8c1227 100644 --- a/lib/ui/market/goods/goods_card.dart +++ b/lib/ui/market/goods/goods_card.dart @@ -33,8 +33,11 @@ class GoodsCard extends StatelessWidget { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - AspectRatio( - aspectRatio: 1, + Container( + clipBehavior: Clip.antiAlias, + decoration: BoxDecoration( + borderRadius: BorderRadius.all(Radius.circular(12.w)), + ), child: Stack( children: [ FadeInImage.assetNetwork( @@ -70,17 +73,28 @@ class GoodsCard extends StatelessWidget { Padding( padding: EdgeInsets.symmetric( horizontal: 12.w, - vertical: 20.w, + vertical: 10.w, + ), + child: Container( + + ) + ), + Padding( + padding: EdgeInsets.symmetric( + horizontal: 12.w, + vertical: 10.w, ), child: Text( item.title, maxLines: 2, overflow: TextOverflow.ellipsis, style: TextStyle( - fontSize: 24.sp, + fontSize: 28.sp, + color: ktextPrimary ), ), ), + Padding( padding: EdgeInsets.symmetric( horizontal: 12.w, @@ -112,4 +126,7 @@ class GoodsCard extends StatelessWidget { ), ); } + + + } diff --git a/lib/ui/market/market_page.dart b/lib/ui/market/market_page.dart index 6df0829b..8382413f 100644 --- a/lib/ui/market/market_page.dart +++ b/lib/ui/market/market_page.dart @@ -1,16 +1,22 @@ // import 'package:aku_community/base/base_style.dart'; import 'package:aku_community/base/base_style.dart'; +import 'package:aku_community/model/common/img_model.dart'; +import 'package:aku_community/model/community/swiper_model.dart'; import 'package:aku_community/provider/app_provider.dart'; +import 'package:aku_community/ui/community/community_func.dart'; +import 'package:aku_community/ui/home/public_infomation/public_information_detail_page.dart'; import 'package:aku_community/ui/market/widget/animated_home_background.dart'; import 'package:aku_community/ui/search/bee_search.dart'; import 'package:aku_community/widget/home/home_sliver_app_bar.dart'; +import 'package:aku_community/widget/others/rectIndicator.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:bot_toast/bot_toast.dart'; import 'package:flutter_easyrefresh/easy_refresh.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:flutter_swiper_null_safety/flutter_swiper_null_safety.dart'; import 'package:get/get.dart'; import 'package:waterfall_flow/waterfall_flow.dart'; @@ -53,13 +59,16 @@ class _MarketPageState extends State int _pageNum = 1; int _size = 4; int _pageCount = 0; - double MessageHeight = 0; - double bannerHeight = 0; - double buttonsHeight = 200.w; + double MessageHeight = 76.w; + double bannerHeight = 354.w; + double buttonsHeight = 334.w; + double searchHeight = 74.w.w; double tabBarHeight = 60.w; late TabController _tabController; + List _swiperModels = []; + Future updateMarketInfo() async { BaseListModel baseListModel = await NetUtil().getList(API.market.hotTop, params: { @@ -115,64 +124,7 @@ class _MarketPageState extends State super.build(context); final mediaWidth = MediaQuery.of(context).size.width; - MessageHeight = 76; - return Scaffold( - // leading: IconButton( - // icon: Icon(CupertinoIcons.search), - // onPressed: () { - // Get.to(() => SearchGoodsPage()); - // }, - // ), - // title: '商城', - // actions: [ - // MaterialButton( - // minWidth: 108.w, - // padding: EdgeInsets.zero, - // onPressed: () async { - // // Get.to(() => SecondHandPage()); - // Get.to(() => MyOrderPage()); - // }, - // child: Column( - // mainAxisAlignment: MainAxisAlignment.center, - // mainAxisSize: MainAxisSize.max, - // children: [ - // Image.asset( - // R.ASSETS_ICONS_SECOND_HAND_PNG, - // width: 48.w, - // height: 48.w, - // ), - // 4.hb, - // // '二手'.text.size(20.sp).black.make(), - // '订单'.text.size(20.sp).black.make(), - // ], - // ), - // ), - // MaterialButton( - // minWidth: 108.w, - // padding: EdgeInsets.zero, - // onPressed: () async { - // final cancel = BotToast.showLoading(); - // List models = - // await DisplayCategoryModel.fetchCategory(0); - // cancel(); - // Get.to(() => CategoryPage(models: models)); - // }, - // child: Column( - // mainAxisAlignment: MainAxisAlignment.center, - // mainAxisSize: MainAxisSize.max, - // children: [ - // Image.asset( - // R.ASSETS_ICONS_CATEGORY_PNG, - // width: 48.w, - // height: 48.w, - // ), - // 4.hb, - // '分类'.text.size(20.sp).black.make(), - // ], - // ), - // ), - // ], body:EasyRefresh( firstRefresh: true, enableControlFinishLoad: false, @@ -182,6 +134,7 @@ class _MarketPageState extends State onRefresh: () async { _pageNum = 1; await updateMarketInfo(); + _swiperModels = await CommunityFunc.swiper(); setState(() {}); }, onLoad: () async { @@ -209,83 +162,32 @@ class _MarketPageState extends State key: _sliverAppBarGlobalKey, actions: _actionsWidget(), title: _buildTitle(), - backgroundColor: Colors.white, - expandedHeight: - bannerHeight + - buttonsHeight+600.w, + backgroundColor: Colors.red, + expandedHeight: MessageHeight+ + bannerHeight + + buttonsHeight+ + searchHeight +tabBarHeight+ScreenUtil().statusBarHeight +kToolbarHeight+280.w, flexibleSpace: _flexibleSpaceBar(context), bottom: PreferredSize( preferredSize: Size.fromHeight(tabBarHeight), child: _goodsTitle() - - // Container( - // color: Colors.green, - // height: tabBarHeight, - // width: 200.w, - // // alignment: Alignment.center, - // // color: AppColor.frenchColor, - // // child: HomePageTabbar( - // // promotionList: _promotionList, - // // timerJump: (index) { - // // _tabIndex = index; - // // _homeCountdownController.indexChange(index); - // // // 定时任务回调 - // // _tabController.animateTo(index); - // // _getPromotionGoodsList(_promotionList[index].id); - // // }, - // // clickItem: (index) { - // // _homeCountdownController.indexChange(index); - // // _getPromotionGoodsList(_promotionList[index].id); - // // }, - // // tabController: _tabController, - // // ), - // ), )), SliverPadding( padding: EdgeInsets.all(10.w), ), - buildSliverGrid(), - - // EasyRefresh( - // firstRefresh: false, - // enableControlFinishLoad: false, - // header: MaterialHeader(), - // footer: MaterialFooter(), - // controller: _refreshController, - // onRefresh: () async { - // _pageNum = 1; - // await updateMarketInfo(); - // setState(() {}); - // }, - // onLoad: () async { - // _pageNum++; - // await loadMarketInfo(); - // if (_pageCount <= _pageNum) { - // _refreshController.finishLoad(noMore: false); - // } - // setState(() {}); - // }, - // child: WaterfallFlow.builder( - // gridDelegate: SliverWaterfallFlowDelegateWithFixedCrossAxisCount( - // crossAxisCount: 2, - // mainAxisSpacing: 20.w, - // crossAxisSpacing: 20.w, - // ), - // padding: EdgeInsets.all(32.w), - // itemBuilder: (context, index) { - // final item = _hotItems[index]; - // return GoodsCard(item: item); - // }, - // itemCount: _hotItems.length, - // ), - // ), + SliverPadding( + padding: EdgeInsets.only(left: 20.w,right: 20.w), + sliver: buildSliverGrid(), + ), + ], ); } SliverGrid buildSliverGrid() { return SliverGrid( + // child: WaterfallFlow.builder( // gridDelegate: SliverWaterfallFlowDelegateWithFixedCrossAxisCount( // crossAxisCount: 2, @@ -303,20 +205,23 @@ class _MarketPageState extends State crossAxisCount: 2, mainAxisSpacing: 20.w, crossAxisSpacing: 20.w, + childAspectRatio:0.57, ), + ///子Item构建器 delegate: new SliverChildBuilderDelegate( (BuildContext context, int index) { + ///每一个子Item的样式 - //return GoodsCard(item: _hotItems[index]); - return Container( - width: 200.w, - height: 200.w, - color: Colors.blue, - ); + return GoodsCard(item: _hotItems[index]); + // return Container( + // width: 200.w, + // height: 200.w, + // color: Colors.blue, + // ); }, ///子Item的个数 - childCount: 20,//_hotItems.length, + childCount: _hotItems.length, ), ); } @@ -345,29 +250,6 @@ class _MarketPageState extends State Widget _buildTitle() { final appProvider = Provider.of(context); - double iconSize = 18.w; - // MaterialButton ges = MaterialButton( - // materialTapTargetSize: MaterialTapTargetSize.shrinkWrap, - // height: 74.w, - // shape: StadiumBorder(), - // elevation: 0, - // minWidth: double.infinity, - // color: Colors.white, - // onPressed: () { - // Get.to(() => BeeSearch()); - // }, - // child: Row( - // children: [ - // Icon( - // Icons.search, - // size: 32.w, - // color: Color(0xFF666666), - // ), - // 10.wb, - // '请输入关键字'.text.size(28.sp).color(ktextSubColor).make().expand(), - // ], - // ), - // ); return Container( height: kToolbarHeight, @@ -442,31 +324,13 @@ class _MarketPageState extends State ), geSearch(), 20.hb, - getNum() - // Container( - // color: Colors.blue, - // width: 300, - // height: 300, - // ), - - - // HomeWeatherWidget( - // backgroundColor: Colors.white.withAlpha(0), - // homeWeatherModel: _homeWeatherModel, - // ), - // _bannerView(), - // _buildGoodsCards(), - // kingCoinListModelList != null - // ? _buttonTitle(context) - // : SizedBox(), - // _activityImageTitle(), - // _activityImageRow(), - // _activityT4Image(), - // HomeCountdownWidget( - // height: timeHeight, - // controller: _homeCountdownController, - // promotionList: _promotionList, - // ), + getNum(), + 20.hb, + HomeSwiper(), + 20.hb, + _buttonTitle(), + 20.hb, + _recommend(), ], ), @@ -480,7 +344,6 @@ class _MarketPageState extends State return Container( margin: EdgeInsets.symmetric(horizontal: 24.w), child: MaterialButton( - materialTapTargetSize: MaterialTapTargetSize.shrinkWrap, height: 74.w, shape: StadiumBorder(), @@ -538,18 +401,21 @@ class _MarketPageState extends State ), child: Container( - + height: 50.w, width: 682.w, decoration: BoxDecoration( //color: Color(0x99F5AF16), borderRadius: BorderRadius.horizontal(right: Radius.circular(12),left:Radius.circular(12)), - border: Border.all(width: 1.w,color: Color(0x99F5AF16)), + border: Border.all(width: 2.w,color: Color(0x99F5AF16)), ), child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ - + 80.wb, + Image.asset(R.ASSETS_ICONS_SHOP_LABA_PNG,width: 36.w,height: 34.w,), + 20.wb, + Text('今日上新1231件',style: TextStyle(color: Color(0xFFD0564B),fontSize: 24.sp,height: 1.05),), ], ), ), @@ -587,8 +453,294 @@ class _MarketPageState extends State ); } + Widget HomeSwiper() { + return Container( + padding: EdgeInsets.symmetric(horizontal: 20.w), + width: double.infinity, + height: bannerHeight, + child: AspectRatio( + aspectRatio: 355 / 177, + child: Swiper( + key: UniqueKey(), + itemBuilder: (BuildContext context, int index) { + return getSwiperImage(_swiperModels[index]); + }, + + pagination: SwiperPagination( + alignment: Alignment.bottomRight, + builder: SwiperCustomPagination( + builder: (BuildContext context, SwiperPluginConfig config) { + return RectIndicator( + position: config.activeIndex, + count: _swiperModels.length, + activeColor: Color(0x99FFFFFF), + color: Color(0xD9FFFFFF), + //未选中 指示器颜色,选中的颜色key为Color + width: 4, + //指示器宽度 + activeWidth: 14, + //选中的指示器宽度 + radius: 4, + //指示器圆角角度 + height: 4, + ); //指示器高度 + })), + scrollDirection: Axis.horizontal, + // control: new SwiperControl(), + autoplay: true, + onTap: (index) { + Get.to(() => + PublicInformationDetailPage(id: _swiperModels[index].newsId!)); + }, + itemCount: _swiperModels.length, + ), + ), + ); + } + + Widget getSwiperImage(SwiperModel swiperModel) { + return Container( + clipBehavior: Clip.antiAlias, + decoration: BoxDecoration( + borderRadius: BorderRadius.all(Radius.circular(12.w)), + ), + child: + FadeInImage.assetNetwork( + placeholder: R.ASSETS_IMAGES_PLACEHOLDER_WEBP, + image: API.image(ImgModel.first(swiperModel.voResourcesImgList)), + fit: BoxFit.fill, + + imageErrorBuilder: (context, error, stackTrace) { + return Image.asset( + R.ASSETS_IMAGES_PLACEHOLDER_WEBP, + fit: BoxFit.fill, + ); + }, + ), + ); + } + + + _buttonTitle() { + Container titles = Container( + alignment: Alignment.center, + + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(12.w), + ), + child: + + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Expanded( + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + _buttonTitleRow( + + ), + _buttonTitleRow( + + ), + _buttonTitleRow( + + ), + _buttonTitleRow( + + ), + _buttonTitleRow( + + ), + + + + ], + ), + ), + ], + ), + 28.hb, + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Expanded( + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + _buttonTitleRow( + ), + _buttonTitleRow( + ), + _buttonTitleRow( + + ), + _buttonTitleRow( + + ), + _buttonTitleRow( + + ), + + + + ], + ), + ), + ], + ), + ], + ), + ); + return Container( + alignment: Alignment.center, + padding: EdgeInsets.symmetric(horizontal: 20.w), + height: buttonsHeight, + width: MediaQuery.of(context).size.width, + child: titles, + ); + } + + Widget getkingCoin() { + return Container( + alignment: Alignment.center, + padding: EdgeInsets.symmetric(horizontal: 20.w,vertical: 20.w), + width: double.infinity, + height: buttonsHeight, + child:_buttonTitleRow(), + ); + } + + + _buttonTitleRow({onPressed}) { + return Expanded( + child: CupertinoButton( + padding: EdgeInsets.zero, + child: Column( + children: [ + Container( + width: 88.w, + height: 88.w, + child: Image.asset(R.ASSETS_IMAGES_PLACEHOLDER_WEBP,width: 88.w,height: 88.w,), + // FadeInImage.assetNetwork( + // placeholder: R.ASSETS_IMAGES_PLACEHOLDER_WEBP, + // image: Api.getImgUrl(kingCoin.url),) + ), + Container( + margin: EdgeInsets.only(top: 6.w), + child: Text( + '数码产品', + style: TextStyle( + + fontSize: 28.sp, + color: Color(0xFF333333)), + ), + ) + ], + ), + onPressed: () { + if (onPressed != null) { + onPressed(); + } + }, + ), + ); + } + + + _recommend(){ + return Container( + height: 184.w, + margin: EdgeInsets.only(left: 20.w,right: 20.w), + padding: EdgeInsets.only(top: 8.w,left: 16.w,right: 16.w), + alignment: Alignment.center, + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(12.w), + ), + child: + Column( + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + Text( + '爆款推荐', + style: TextStyle( + fontWeight: FontWeight.bold, + fontSize: 28.sp, + color: ktextPrimary), + ), + ], + ), + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Container( + width: 96.w, + height: 96.w, + child: Image.asset(R.ASSETS_IMAGES_PLACEHOLDER_WEBP,width: 96.w,height: 96.w,), + // FadeInImage.assetNetwork( + // placeholder: R.ASSETS_IMAGES_PLACEHOLDER_WEBP, + // image: Api.getImgUrl(kingCoin.url),) + ), + 20.wb, + Container( + width: 96.w, + height: 96.w, + child: Image.asset(R.ASSETS_IMAGES_PLACEHOLDER_WEBP,width: 96.w,height: 96.w,), + // FadeInImage.assetNetwork( + // placeholder: R.ASSETS_IMAGES_PLACEHOLDER_WEBP, + // image: Api.getImgUrl(kingCoin.url),) + ), + 20.wb, + Container( + width: 96.w, + height: 96.w, + child: Image.asset(R.ASSETS_IMAGES_PLACEHOLDER_WEBP,width: 96.w,height: 96.w,), + // FadeInImage.assetNetwork( + // placeholder: R.ASSETS_IMAGES_PLACEHOLDER_WEBP, + // image: Api.getImgUrl(kingCoin.url),) + ), + 20.wb, + Container( + width: 96.w, + height: 96.w, + child: Image.asset(R.ASSETS_IMAGES_PLACEHOLDER_WEBP,width: 96.w,height: 96.w,), + // FadeInImage.assetNetwork( + // placeholder: R.ASSETS_IMAGES_PLACEHOLDER_WEBP, + // image: Api.getImgUrl(kingCoin.url),) + ), + 20.wb, + Container( + width: 96.w, + height: 96.w, + child: Image.asset(R.ASSETS_IMAGES_PLACEHOLDER_WEBP,width: 96.w,height: 96.w,), + // FadeInImage.assetNetwork( + // placeholder: R.ASSETS_IMAGES_PLACEHOLDER_WEBP, + // image: Api.getImgUrl(kingCoin.url),) + ), + 20.wb, + Container( + width: 96.w, + height: 96.w, + child: Image.asset(R.ASSETS_IMAGES_PLACEHOLDER_WEBP,width: 96.w,height: 96.w,), + // FadeInImage.assetNetwork( + // placeholder: R.ASSETS_IMAGES_PLACEHOLDER_WEBP, + // image: Api.getImgUrl(kingCoin.url),) + ), + ], + ).expand(), + ], + ) + ); + } diff --git a/lib/widget/home/home_sliver_app_bar.dart b/lib/widget/home/home_sliver_app_bar.dart index 747bbe8e..db89be7b 100644 --- a/lib/widget/home/home_sliver_app_bar.dart +++ b/lib/widget/home/home_sliver_app_bar.dart @@ -22,7 +22,7 @@ class HomeSliverAppBar extends StatefulWidget { } class HomeSliverAppBarState extends State { - Color _displayColor = Colors.blue; + Color _displayColor = Colors.red; updateColor(Color color) { setState(() {