Как изменить размер значков кнопок «ящик» / «назад» на панели приложения, не изменяя поведение, предоставляемое по умолчанию во Flutter? - PullRequest
0 голосов
/ 19 февраля 2020

Я пытаюсь изменить размер значков («Назад», предоставленных Navigator, и «Ящик», предоставленных Scaffold) в панели приложений в моих ThemeData, изменив iconTheme и primaryIconTheme:

ThemeData(
    primarySwatch: Colors.blue,
    iconTheme: IconThemeData(color: Colors.grey, size: 32),
    primaryIconTheme: IconThemeData(color: Colors.grey, size: 32)
  ),

Эти строки изменяет только цвет значков, но размер не изменяется.

Мне не нужно изменять поведение, с которым Flutter обрабатывает эту кнопку, только их размер.

1 Ответ

0 голосов
/ 19 февраля 2020

Виджет AppBar использует виджет BackButton , поэтому изменение невозможно, пока вы не измените его из каркаса в другой ветви, но лучший подход - использовать свойство Leading и условие ModalRoute. of (context) ?. canPop, чтобы проверить, может ли быть выбран текущий маршрут. Например:

AppBar( leading: ModalRoute.of(context)?.canPop == true ? IconButton( icon: Icon( Icons.arrow_back, size: 60, ), ) : null, title: Text( "Example", ), )

...