dyn topic fold

Signed-off-by: dom <githubaccount56556@proton.me>
This commit is contained in:
dom
2026-07-06 12:22:27 +08:00
parent 5e1c73abc1
commit aa03eed92d
13 changed files with 184 additions and 97 deletions

View File

@@ -85,30 +85,13 @@ class _MemberDynamicsPageState extends State<MemberDynamicsPage>
? SliverWaterfallFlow(
gridDelegate: dynGridDelegate,
delegate: SliverChildBuilderDelegate(
(_, index) {
if (index == response.length - 1) {
_memberDynamicController.onLoadMore();
}
return DynamicPanel(
item: response[index],
onRemove: _memberDynamicController.onRemove,
onSetTop: _memberDynamicController.onSetTop,
);
},
(_, index) => _itemBuilder(response, index),
childCount: response.length,
),
)
: SliverList.builder(
itemBuilder: (context, index) {
if (index == response.length - 1) {
_memberDynamicController.onLoadMore();
}
return DynamicPanel(
item: response[index],
onRemove: _memberDynamicController.onRemove,
onSetTop: _memberDynamicController.onSetTop,
);
},
itemBuilder: (context, index) =>
_itemBuilder(response, index),
itemCount: response.length,
)
: HttpError(onReload: _memberDynamicController.onReload),
@@ -118,4 +101,15 @@ class _MemberDynamicsPageState extends State<MemberDynamicsPage>
),
};
}
Widget _itemBuilder(List<DynamicItemModel> list, int index) {
if (index == list.length - 1) {
_memberDynamicController.onLoadMore();
}
return DynamicPanel(
item: list[index],
onRemove: _memberDynamicController.onRemove,
onSetTop: _memberDynamicController.onSetTop,
);
}
}