Как показать Flutter AppBar без конечного пробела - PullRequest
0 голосов
/ 24 февраля 2019

Когда я добавляю 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 Ответ

0 голосов
/ 25 февраля 2019

Проблема, как представляется, была вызвана добавлением 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(

...