Добавить прослушиватель onTap в appBar (флаттер)

Немного поздно, но этот ответ может кому-то помочь. Я хотел бы знать это, потому что я хотел иметь возможность продвигать функцию / ошибку / независимо от работы и работать с той же точки на другом компьютере.

Что работает для меня - это совершить мой прогресс код (в ветке, в которой я работаю один). Когда я доберусь до другого компьютера, сделайте притяжение, затем отмените фиксацию с помощью:

git reset --soft HEAD^

Продолжайте работать так же, как и вы, со всеми вашими изменениями в работе, незафиксированными и неустановленными.

Надеюсь, что это поможет.

0
задан Emily Harkness 13 July 2018 в 09:30
поделиться

1 ответ

есть несколько способов сделать это. Я думаю, что создание пользовательской панели приложений является хорошим способом

Пример:

return Scaffold(
  appBar: CustomAppBar(
    appBar: AppBar(title: Text("hello"),),
    onTap: () {
      print("test");
    },
  ),
  body: Container(),
);

Чтобы создать пользовательскую панель приложений, вам необходимо реализовать PreferredsizeWidget

class CustomAppBar extends StatelessWidget implements PreferredSizeWidget {
  final VoidCallback onTap;
  final AppBar appBar;

  const CustomAppBar({Key key, this.onTap,this.appBar}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return  GestureDetector(onTap: onTap,child: appBar);
  }

  // TODO: implement preferredSize
  @override
  Size get preferredSize => new Size.fromHeight(kToolbarHeight);
}
1
ответ дан Raouf Rahiche 17 August 2018 в 13:16
поделиться