Добавить пользовательский значок

#flutter #convex-bottom-bar

#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,
  ),
)
 

Тем не менее, я хочу изменить значок и добавить свой пользовательский значок, я пытаюсь это сделать, но это не работает:

значок: индекс ==1?новое изображение.ресурс (‘images / 1.0x / icon2.png’):новое изображение.ресурс (‘images / 1.0x/NewIcon.png’),

Есть идеи, как это сделать?

Спасибо

Комментарии:

1. Какую ошибку вы получаете?

2. Просто из любопытства. Помог ли вам мой ответ?

Ответ №1:

Здесь у вас есть два варианта: вы можете либо использовать какой-либо файл шрифта для своих значков, что в целом может быть лучшим способом из-за различных причин, таких как проблемы с размером приложения и масштабированием изображения, либо вы можете использовать файлы изображений, такие как .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 что просто замените виджет своим изображением, и он должен работать.