flutter - 添加自定义图标
问题描述
嗨,我正在使用库:convex_bottom_bar 创建我的底栏
StyleProvider(
style: Style(),
child: ConvexAppBar(
initialActiveIndex: 1,
height: 50,
top: -30,
curveSize: 100,
style: TabStyle.fixedCircle,
items: [
TabItem(icon: Icons.link),
TabItem(icon: Icons.import_contacts),
TabItem(title: "2020", icon: Icons.work),
],
backgroundColor: _tabBackgroundColor,
),
)
但是,我想更改图标并添加我的自定义图标,我尝试了这个,但它不起作用:
图标:index==1?new Image.asset('images/1.0x/icon2.png'):new Image.asset('images/1.0x/newIcon.png'),
知道怎么做吗?
谢谢
解决方案
您在这里有两个选择,您可以为您的图标使用某种字体文件,这通常可能是更好的方式,因为应用程序大小和图像缩放问题等各种原因,或者您可以使用 .png 或 .svg 等图像文件. 你应该记住这一点。
查看您的代码片段,您似乎想要使用图像文件。从 1.3.1 版本开始,在凸底栏选项卡中的项目是通用类型,因此两者IconData
都Widget
可以使用(参见1.3.1)。
这意味着可能会出现以下情况:
TabItem(
icon: Container(
decoration: BoxDecoration(
shape: BoxShape.circle,
color: Color(0xFFFF5722),
),
child: Icon(Icons.add, color: Colors.white, size: 40),
)),
有关详细信息,请参阅此示例示例。
所以只需IconData
用你的 Image 小部件替换它,它应该可以工作。
推荐阅读
- linux - 如何从 Cloud Run 容器内的 Cloud Storage 下载文件?
- javascript - 将 OnClick 函数添加到新创建的图像中
- flutter - flutterfire firestore addAll 方法
- assembly - 了解 LEA 指令 x86
- php - 数组和 if 语句以及访问每个索引位置
- javascript - 从 3D 对象的形状变形 2D 形状
- swift - 为什么列表行有黑色背景?
- jupyter-notebook - TypeError: stat: path 应该是字符串、字节、os.PathLike 或整数,而不是 TrainingResult
- r - 在 R 中使用 dplyr 替换时间点
- python-3.x - 我无法弄清楚为什么它会打印出已从列表中删除的数字