添加列表无数据显示内容

空列表显示内容间距修复
历史直播和热门直播位置替换
直播商品全选按钮显示优化
master
laiiihz 5 years ago
parent 78611a4195
commit a4125b77b0

@ -14,6 +14,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_redux/flutter_redux.dart';
import 'package:recook/constants/constants.dart';
import 'package:recook/constants/header.dart';
import 'package:recook/constants/styles.dart';
import 'package:recook/redux/recook_state.dart';
@ -126,7 +127,7 @@ abstract class BaseStoreState<T extends StatefulWidget> extends State<T>
children: <Widget>[
icon ??
Image.asset(
"assets/nodata.png",
R.ASSETS_NODATA_PNG,
width: rSize(80),
height: rSize(80),
),

@ -135,10 +135,10 @@ class _GoodPriceViewState extends State<GoodPriceView> {
children: <Widget>[
(coupon != null && coupon != 0)
? Container(
width: rSize(97),
height: rSize(23),
decoration: BoxDecoration(
image: DecorationImage(
fit: BoxFit.fill,
image: AssetImage(
R.ASSETS_GOODS_DETAILS_BOTTOM_GOLD_PNG),
),

@ -47,6 +47,7 @@ class _LivePickGoodsPageState extends State<LivePickGoodsPage>
return Scaffold(
backgroundColor: Colors.white,
appBar: AppBar(
brightness: Brightness.light,
elevation: 0,
backgroundColor: Colors.white,
leading: RecookBackButton.text(),
@ -116,8 +117,8 @@ class _LivePickGoodsPageState extends State<LivePickGoodsPage>
controller: _tabController,
isScrollable: true,
tabs: [
Tab(text: '历史直播'),
Tab(text: '热门商品'),
Tab(text: '历史直播'),
Tab(text: '全部商品'),
],
labelStyle: TextStyle(
@ -138,12 +139,12 @@ class _LivePickGoodsPageState extends State<LivePickGoodsPage>
child: TabBarView(
controller: _tabController,
children: [
GoodsWindowView(
HotGoodsView(
onPick: () {
setState(() {});
},
),
HotGoodsView(
GoodsWindowView(
onPick: () {
setState(() {});
},

@ -3,6 +3,7 @@ import 'package:flutter/material.dart';
import 'package:recook/constants/api.dart';
import 'package:recook/constants/header.dart';
import 'package:recook/manager/http_manager.dart';
import 'package:recook/pages/live/live_stream/pick_view/hot_goods_view.dart';
import 'package:recook/pages/live/live_stream/pick_view/live_goods_card.dart';
import 'package:recook/pages/live/live_stream/pick_view/pick_cart.dart';
import 'package:recook/pages/live/models/goods_window_model.dart';
@ -193,16 +194,10 @@ class _PickSearchGoodsPageState extends State<PickSearchGoodsPage> {
),
),
Expanded(
child: ListView.builder(
itemBuilder: (context, index) {
return LiveGoodsCard(
onPick: () {
setState(() {});
},
model: _hotList[index],
);
child: HotGoodsView(
onPick: () {
setState(() {});
},
itemCount: _hotList.length,
),
),
],

@ -5,7 +5,6 @@ import 'package:recook/constants/header.dart';
import 'package:recook/manager/http_manager.dart';
import 'package:recook/models/category_model.dart';
import 'package:recook/pages/live/live_stream/pick_view/brand_goods_list_view.dart';
import 'package:recook/pages/live/live_stream/pick_view/brand_goods_view.dart';
import 'package:recook/utils/custom_route.dart';
import 'package:recook/widgets/custom_image_button.dart';
@ -154,8 +153,10 @@ class _AllGoodsViewState extends State<AllGoodsView>
),
Text(
e.sub[index].name,
textAlign: TextAlign.center,
style: TextStyle(
color: Color(0xFF333333),
height: 1,
),
),
],

@ -130,11 +130,19 @@ class _BrandGoodsListViewState extends State<BrandGoodsListView> {
padding: EdgeInsets.all(rSize(15)),
child: Row(
children: [
FadeInImage.assetNetwork(
placeholder: R.ASSETS_PLACEHOLDER_NEW_1X1_A_PNG,
image: Api.getImgUrl(widget.logo),
height: rSize(64),
width: rSize(64),
Container(
decoration: BoxDecoration(
border: Border.all(
color: Colors.black.withOpacity(0.2),
width: rSize(1),
),
),
child: FadeInImage.assetNetwork(
placeholder: R.ASSETS_PLACEHOLDER_NEW_1X1_A_PNG,
image: Api.getImgUrl(widget.logo),
height: rSize(64),
width: rSize(64),
),
),
rWBox(12),
Column(
@ -193,18 +201,35 @@ class _BrandGoodsListViewState extends State<BrandGoodsListView> {
_controller.loadComplete();
});
},
body: ListView.builder(
itemBuilder: (context, index) {
return LiveGoodsCard(
onPick: () {
setState(() {});
widget.onPick();
},
model: _goodsList[index],
);
},
itemCount: _goodsList.length,
),
body: _goodsList.isEmpty
? Center(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
Image.asset(R.ASSETS_IMG_NO_DATA_PNG),
rHBox(10),
Text(
'该类别没有商品',
style: TextStyle(
color: Color(0xFF333333),
fontSize: rSP(16),
),
),
],
),
)
: ListView.builder(
itemBuilder: (context, index) {
return LiveGoodsCard(
onPick: () {
setState(() {});
widget.onPick();
},
model: _goodsList[index],
);
},
itemCount: _goodsList.length,
),
),
),
);

@ -1,6 +1,7 @@
import 'package:flutter/material.dart';
import 'package:recook/constants/api.dart';
import 'package:recook/constants/constants.dart';
import 'package:recook/constants/header.dart';
import 'package:recook/manager/http_manager.dart';
import 'package:recook/pages/live/live_stream/pick_view/live_goods_card.dart';
import 'package:recook/pages/live/live_stream/pick_view/pick_cart.dart';
@ -44,36 +45,38 @@ class _GoodsWindowViewState extends State<GoodsWindowView>
super.build(context);
return Column(
children: [
MaterialButton(
onPressed: () {
if (_selectAll) {
PickCart.picked.removeWhere((picked) {
return _goodsModels
.indexWhere((element) => element.id == picked.id) !=
-1;
});
} else
_goodsModels.forEach((element) {
if (PickCart.picked.length < 50) {
PickCart.picked.add(element);
}
});
widget.onPick();
},
child: Row(
children: [
RecookCheckBox(state: _selectAll),
rWBox(10),
Text(
'全选',
style: TextStyle(
color: Color(0xFF333333),
fontSize: rSP(14),
_goodsModels.isEmpty
? SizedBox()
: MaterialButton(
onPressed: () {
if (_selectAll) {
PickCart.picked.removeWhere((picked) {
return _goodsModels.indexWhere(
(element) => element.id == picked.id) !=
-1;
});
} else
_goodsModels.forEach((element) {
if (PickCart.picked.length < 50) {
PickCart.picked.add(element);
}
});
widget.onPick();
},
child: Row(
children: [
RecookCheckBox(state: _selectAll),
rWBox(10),
Text(
'全选',
style: TextStyle(
color: Color(0xFF333333),
fontSize: rSP(14),
),
),
],
),
),
],
),
),
Expanded(
child: RefreshWidget(
controller: _controller,
@ -98,20 +101,37 @@ class _GoodsWindowViewState extends State<GoodsWindowView>
_controller.loadComplete();
});
},
body: ListView.builder(
itemBuilder: (context, index) {
final model = _goodsModels[index];
return LiveGoodsCard(
onPick: () {
setState(() {
widget.onPick();
});
},
model: model,
);
},
itemCount: _goodsModels.length,
),
body: _goodsModels.isEmpty
? Center(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
Image.asset(R.ASSETS_IMG_NO_DATA_PNG),
rHBox(10),
Text(
'您没有历史记录',
style: TextStyle(
color: Color(0xFF333333),
fontSize: rSP(16),
),
),
],
),
)
: ListView.builder(
itemBuilder: (context, index) {
final model = _goodsModels[index];
return LiveGoodsCard(
onPick: () {
setState(() {
widget.onPick();
});
},
model: model,
);
},
itemCount: _goodsModels.length,
),
),
),
],

@ -44,36 +44,38 @@ class _HotGoodsViewState extends State<HotGoodsView>
super.build(context);
return Column(
children: [
MaterialButton(
onPressed: () {
if (_selectAll) {
PickCart.picked.removeWhere((picked) {
return _goodsModels
.indexWhere((element) => element.id == picked.id) !=
-1;
});
} else
_goodsModels.forEach((element) {
if (PickCart.picked.length < 50) {
PickCart.picked.add(element);
}
});
widget.onPick();
},
child: Row(
children: [
RecookCheckBox(state: _selectAll),
rWBox(10),
Text(
'全选',
style: TextStyle(
color: Color(0xFF333333),
fontSize: rSP(14),
_goodsModels.isEmpty
? SizedBox()
: MaterialButton(
onPressed: () {
if (_selectAll) {
PickCart.picked.removeWhere((picked) {
return _goodsModels.indexWhere(
(element) => element.id == picked.id) !=
-1;
});
} else
_goodsModels.forEach((element) {
if (PickCart.picked.length < 50) {
PickCart.picked.add(element);
}
});
widget.onPick();
},
child: Row(
children: [
RecookCheckBox(state: _selectAll),
rWBox(10),
Text(
'全选',
style: TextStyle(
color: Color(0xFF333333),
fontSize: rSP(14),
),
),
],
),
),
],
),
),
Expanded(
child: RefreshWidget(
controller: _controller,

@ -76,6 +76,7 @@ class _UserActivityViewState extends State<UserActivityView>
mainAxisSize: MainAxisSize.min,
children: [
Image.asset(R.ASSETS_IMG_NO_DATA_PNG),
rHBox(10),
Text(
selfFlag ? '您还未发布过动态' : 'TA还未发布过动态',
style: TextStyle(

@ -68,6 +68,7 @@ class _UserPlaybackViewState extends State<UserPlaybackView>
mainAxisSize: MainAxisSize.min,
children: [
Image.asset(R.ASSETS_IMG_NO_DATA_PNG),
rHBox(10),
Text(
selfFlag ? '您没有直播记录' : 'TA没有直播记录',
style: TextStyle(

Loading…
Cancel
Save