在不是其子级的TabBar上使用AppBar样式

时间:2018-10-04 10:50:02

标签: flutter

我希望我的标签栏具有与AppBar相同的样式。 (使用相同的图标颜色,文本颜色和背景颜色)

我的布局的左边有一个选项卡式部分,右边有另一个列。不显示其他样式的TabBar图标,因为它们和背景均为白色。

那么将AppBar样式应用于TabBar的最便捷方法是什么?感谢您的任何建议!

App Screenshot

<AxiosContext.Consumer>

3 个答案:

答案 0 :(得分:1)

TabBar用作bottom:的{​​{1}}小部件时,您会免费获得许多东西。它获取背景色和具有特殊功能的“材质”小部件。当默认指示器颜色与背景颜色(give a look here)相同时,它将强制指示器使用白色。

因此,当您将AppBar放在TabBar外面时,您必须自己处理一切。

但是将TabBar包裹在AppBar中并赋予它Materialthe same the framework does here)似乎很容易。

因此,最后只是将primaryColor替换为SizedBox并设置颜色。而且您可以免费获得墨水飞溅。

Material

答案 1 :(得分:1)

appBar相互之间所做的是插入指向Theme.textTheme.title的自定义DefaultTextStyle

您可以通过将小部件树的一部分包装到自定义的DefaultTextStyle中来做完全相同的事情。

DefaultTextStyle(
  style: Theme.of(context).textTheme.title,
  child: Text('Title')
);

关于背景色,在主题的另一个字段中可用。

Container(
  color: Theme.of(context).primaryColor,
);

答案 2 :(得分:0)

将您的代码更改为类似这样的内容:

class suite_libsAdmin(admin.ModelAdmin):
    actions = None
    list_display_links = None