我在我的应用程序中使用了一个滑动表对话框,当我想在 inputText 中写一些东西时,一个滑动表就会出现在键盘上。我想固定在底部并将键盘推入滑动板。谁能帮助我,我该如何解决?
这是我与滑动表相关的代码部分:
Widget buildSheet() {
return ValueListenableBuilder<String>(
valueListenable: audioManager.currentEpisodeIdNotifier,
builder: (_, value, __) {
var snap = [0.0, 1.0];
if (value.length > 0) {
snap = [
0.2,
1.0,
];
}
return SlidingSheet(
listener: sheetListener,
duration: const Duration(milliseconds: 500),
controller: controller,
color: MyColors.white,
elevation: 2,
maxWidth: 500,
minHeight: 210,
cornerRadius: 35,
cornerRadiusOnFullscreen: 0.0,
closeOnBackdropTap: true,
closeOnBackButtonPressed: true,
addTopViewPaddingOnFullscreen: false,
isBackdropInteractable: true,
snapSpec: SnapSpec(
snap: true,
positioning: SnapPositioning.relativeToAvailableSpace,
snappings: snap,
onSnap: (state, snap) {},
),
parallaxSpec: const ParallaxSpec(
enabled: true,
amount: 0.35,
endExtent: 0.6,
),
liftOnScrollHeaderElevation: 4,
liftOnScrollFooterElevation: 4,
body: _buildBody(),
headerBuilder: buildHeader,
footerBuilder: buildFooter,
// builder: buildChild,
customBuilder: buildInfiniteChild,
);
});
}
Widget buildHeader(BuildContext context, SheetState state) {
return SizedBox();
}
Widget buildFooter(BuildContext context, SheetState state) {
return SizedBox();
}
Widget buildInfiniteChild(
BuildContext context,
ScrollController scrollController,
SheetState state,
) {
return SheetListenerBuilder(
buildWhen: (oldState, newState) =>
oldState.progress != newState.progress,
builder: (context2, snapshot) {
return Material(
child: PlayerMain(
scrollControllerSheet: scrollController,
progress: snapshot.progress));
});
}