flutter - 如何使用 TabBar 的主题?
问题描述
我为 TabBar 创建了一个主题,即:
class AppWidget extends StatelessWidget {
const AppWidget();
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(
tabBarTheme: TabBarTheme(
unselectedLabelColor: Colors.black, // and so on
),),
home: const HomePage(),
);},);}
}
当我使用 TabBar 时,我创建的主题没有实现。如何在 TabBar 实现中使用上面的 TabBar 主题?
TabBar 的代码是:
class HomeCustomAppBar extends StatelessWidget with PreferredSizeWidget {
@override
Widget build(BuildContext context) {
return Container(
child: AppBar(
// how to get the TabBar Theme here?
bottom:TabBar([]),
),
);
}
@override
Size get preferredSize => Size.fromHeight(140);
}
解决方案
理想情况下,您不需要直接使用它,TabBarTheme
它应该在 ThemeData 中设置后自动应用于所有 TabBar。不过,如果您仍然希望访问它,您可以使用:
TabBarTheme.of(context)
推荐阅读
- javascript - 无法读取未定义未处理拒绝的属性“_id”
- sql - 计算每月快照表中行级标志更改的行数
- python - 如何使用请求发布发送 BytesIO
- laravel - 如何修复 cURL 错误 60 无法获取本地颁发者证书的问题
- date - Shopify Liquid 日期年初变量
- python - 优化一些 Python 以解析字符串字段
- python-3.x - 尝试在数据框中计算表情符号的问题
- spring-boot - Maven - 包 org.springframework.boot 不存在
- html - jekyll-sitemap 和 robots.txt 在生成 jekyll 站点时意外被包裹在 html 中
- c - 在子进程中打开文件是否会在内核的系统打开文件表中创建一个单独的条目?