Как показать Flutter AppBar без конечного пробела

Когда я добавляю AppBar в свою программу, она показывает пустое пространство под AppBar, которое по сути является пустой строкой. Когда я удаляю панель приложений, строка пробела отсутствует. Космический ряд очень заметен и портит внешний вид приложения. Есть ли способ получить AppBar без пробела и без использования собственного виджета для его достижения?

Код:

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
        title: 'Flutter Calculator',
        home: Scaffold(
            appBar: AppBar(title: Text("Flutter Calculator")),
            body: (HomeScreen())));
  }
}

1 ответ

Решение

Эта проблема, по-видимому, была вызвана добавлением SafeArea без значения "top:", установленного в false. Надеюсь, это решение. Не уверен, почему по умолчанию SafeArea добавляет заполнение. Я бы подумал, что лучше добавить свойство отступа, но что бы я знал, я только изучаю Flutter?

Соответствующий код приведен ниже, и теперь проблема, похоже, исправлена. Ранее я показал минимальный AppBar, чтобы уменьшить количество кода, чтобы проиллюстрировать проблему. Полный AppBar теперь отображается. Кажется, это сложный способ просто установить высоту AppBar, но что я буду знать? Однако, как новичку в Flutter, мне потребовалось несколько часов, чтобы найти то, что, я надеюсь, является решением. Однако главное в параграфе 1 выше.

class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( home: Scaffold( appBar: PreferredSize( preferredSize: Size.fromHeight(35.0), child: AppBar( automaticallyImplyLeading: false, // hides leading widget centerTitle: true, title: Text("Flutter Calculator by Brian"))), body: (HomeScreen()))); } } class HomeScreen extends StatefulWidget { @override HomeScreenState createState() => new HomeScreenState(); }

class HomeScreenState extends State<HomeScreen> {

@override Widget build(BuildContext context) { return MaterialApp( home: SafeArea( top: false, bottom: false, child: Material(

Другие вопросы по тегам