我正在尝试做一个音频播放器应用程序,我想让播放器屏幕适合整个屏幕大小。
然而,顶部和底部的填充没有帮助。
我尝试从bottomNavigationBar
和其他小部件中删除SafeArea,但没有成功。
我该怎么办?
玩家图片:
(the灰色填充不会让图像拉伸到最后)
the code of the player:
Widget build(BuildContext context) {
return Scaffold(
resizeToAvoidBottomInset: false,
backgroundColor: const Color(0xff1c1c1e),
body: GetBuilder<OverlayHandler>(
builder: (getContext) {
if (!Get.find<OverlayHandler>().inPipMode) {
return Stack(
children:[
Container(...)
]
); // player at full screen
} else {
return Stack(...); // player at PiP mode
}
}
)
);
}
主屏widget代码:
Widget build(BuildContext context) {
return GetBuilder<NavigationController>(
builder: (controller) {
return Scaffold(
body: SafeArea(
// bottom option of this SafeArea doesn't affect the player size
child: IndexedStack(
index: controller.tabIndex,
children: const [
...
],
),
),
bottomNavigationBar: SafeArea(
// bottom option of this SafeArea doesn't affect the player size
child: SizedBox(
height: 80,
child: BottomNavigationBar(
items: [
...
],
),
),
),
);
}
);
}
}
2条答案
按热度按时间ulydmbyx1#
安卓截图
iOS屏幕截图
i1icjdpr2#
尝试删除
Scaffold()
的背景色并添加extendBody: true,
,或将容器的高度设置为height: double.infinity,
,或在堆栈内部添加高度为height: double.infinity,
的空容器