Scaffold(
floatingActionButton: _buildTransparentButton()
)
你可以尝试使用floatingActionButton。
return MaterialApp(
home: Scaffold(
extendBody: true,
bottomNavigationBar: BottomNavigationBar(
backgroundColor: Colors.transparent,
elevation: 0,
items: const <BottomNavigationBarItem>[
BottomNavigationBarItem(
icon: Icon(Icons.home),
label: 'Home',
),
BottomNavigationBarItem(
icon: Icon(Icons.explore),
label: 'Explore',
),
BottomNavigationBarItem(
icon: Icon(Icons.person),
label: 'Profile',
),
],
currentIndex: _selectedIndex,
selectedItemColor: Colors.redAccent,
// onTap: _onItemTapped,
),
),
);
bottomNavigationBar: BottomNavigationBar(
selectedItemColor: Colors.yellowAccent,
unselectedItemColor: kAccentColor,
backgroundColor: kMainColor,
elevation: 0,
type: BottomNavigationBarType.fixed,
items: [
BottomNavigationBarItem(
icon: Icon(
Icons.one_x_mobiledata,
color: kAccentColor,
),
label: 'Selected',
),
BottomNavigationBarItem(
icon: Icon(
Icons.two_k,
color: kAccentColor,
),
label: 'Unselected',
),
],
),
const kMainColor = Color(0xff071330);
const kAccentColor = Color(0xffC3CEDA);
找到了透明BottomNavigationBar
的解决方案。
BottomNavigationBar
的源代码。Widget build
的方法。Stack widget
,其中包含一个material widget。shadowColor:Colors.transparent
现在您已经获得了一个透明的BottomNavigationBar
Stack
,将两个女孩的图像作为底层(堆栈的底部),并使用全屏的Column
,将MainAxisSize
设置为MainAxisSize.max
,将MainAxisAlignment
设置为MainAxisAlignment.end
。我可以写一个答案,但现在无法测试,所以我更喜欢写一个评论。希望能有所帮助。 - magicleon94