flutter封装AppBar

flutter封装AppBar

最近做flutter项目,为了更简洁,封装了AppBar组件,不过不是自定义组件哈,只不过页面头部样式都基本一致,为了减少代码,基于原生的AppBar做了个小封装,现将代码分享给大家!

//appbar,顶部标题页面
import 'package:flutter/material.dart';

class TopAppBar extends AppBar {
  TopAppBar(
  BuildContext context, //上下文,必须
  String titleName,//页面标题,必须
      {
        bool isCenterTitle = true,//是否中间居中,默认中间居中,参数可选
        final actions,//右边部分,可能存放图标,文字等,可能还有点击事件,参数可选
        final backIcon=const Icon(Icons.arrow_back_ios,color: Colors.grey,),//左边返回箭头图标,默认是<,可自定义,,参数可选也可以是文字
        final String rightText='',//右边文字,参数可选
        final rightCallback,//右边文字或者图标的点击函数,参数可选
      })
      : super(
    title: Text(titleName),
    leading: IconButton(
        icon:backIcon,
        onPressed: () => Navigator.of(context).pop()
    ),
    centerTitle: isCenterTitle,
    actions: [
      Padding(
        padding: EdgeInsets.only(right: 10.0),
        child:Center(
          child: GestureDetector(
            onTap:(){
              rightCallback();
            },
            child: Text(rightText),
          ),
        ),
      ),
    ],
  );
}

你可能感兴趣的:(flutter)