Closed
Description
Platforms
dart
Description
增加了
extendBody: true,
extendBodyBehindAppBar: true,
刷新组件跟列表 存在过高的区域间隔
完整代码:
Widget _buildList(BuildContext context) {
return LayoutBuilder(
builder: (context, constraints) {
Widget resultWidget = EasyRefresh.builder(
onLoad: () {
return controller.loadOlderMessages();
},
footer: ClassicFooter(
spacing: 5,
noMoreText: "没有更早的聊天记录.",
noMoreIcon: Icon(Icons.hourglass_full, size: 16),
textStyle: TextStyle(color: Colors.white60),
showMessage: false,
),
triggerAxis: Axis.vertical,
childBuilder: (context, physics) {
var scrollViewPhysics = physics.applyTo(
ChatObserverClampingScrollPhysics(
observer: controller.chatObserver,
),
);
Widget listview = ListView.builder(
reverse: true,
physics: scrollViewPhysics,
keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag,
padding: EdgeInsets.only(
bottom: MediaQuery.of(context).padding.bottom,
),
itemCount: controller.messages.length,
shrinkWrap: controller.chatObserver.isShrinkWrap,
controller: controller.scrollController,
itemBuilder: ((context, index) {
RCIMIWMessage message = controller.messages[index];
return _buildItem(message);
}),
);
if (controller.chatObserver.isShrinkWrap) {
listview = SingleChildScrollView(
reverse: true,
physics: scrollViewPhysics,
child: Container(
alignment: Alignment.topCenter,
padding: EdgeInsets.only(
top: MediaQuery.of(context).padding.top,
),
height: constraints.maxHeight + 0.001,
child: listview,
),
);
}
return listview;
},
);
resultWidget = ListViewObserver(
controller: controller.observerController,
child: resultWidget,
);
// resultWidget = Align(
// alignment: Alignment.topCenter,
// child: resultWidget,
// );
return resultWidget;
},
);
}
My code
No response
Try do it
No response
Metadata
Metadata
Assignees
Labels
No labels