Flutter:AppBar 小部件的重用

SRe*_*Rel 5 widget dart flutter

我创建了多个屏幕,由于某些原因,我必须单独创建一个代表屏幕的支架。然而,由于 AppBar 应该每次都是相同的,我想到在无状态小部件中创建它一次,然后重用它:

import 'package:flutter/material.dart';

class MyAppBar extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return AppBar(
      centerTitle: true,
      backgroundColor: Colors.black,
      title: Text(
        "Places Near You",
        style: TextStyle(
            color: Colors.black, fontFamily: "Billabong", fontSize: 35),
      ),
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

然后在每个屏幕上我想通过编写来使用它:

class _CreatePostScreenState extends State<CreatePostScreen> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: MyAppBar(),
        body: Center(
          child: Text("Hello"),
        ));
  }
}
Run Code Online (Sandbox Code Playgroud)

但是,我收到以下错误,我不知道如何解决(我正确导入了所有内容):

在此输入图像描述

Lui*_*uiz 10

您的应用栏必须实现 PreferredSizeWidget。

class YourAppbar extends StatelessWidget implements PreferredSizeWidget {
 
  @override
  Widget build(BuildContext context) {
     return AppBar();
 }

 @override
 Size get preferredSize => const Size.fromHeight(kToolbarHeight);
Run Code Online (Sandbox Code Playgroud)

}