Как создать собственный виджет AppBar? - PullRequest
0 голосов
/ 14 ноября 2018

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

Но мне не удалось создать виджет.

`import 'package:flutter/material.dart';

 class AppBar extends StatelessWidget{
  @override
  Widget build(BuildContext context){
return AppBar(
  title: Text('Ordering'),
  actions: <Widget>[
    IconButton(
      onPressed: _incrementCounter,
      icon: Icon(Icons.add),
    ),
    BadgeIconButton(
      itemCount: _counter,
      badgeColor: Color.fromRGBO(37, 134, 16, 1.0),
      badgeTextColor: Colors.white,
      icon: Icon(Icons.shopping_cart, size: 30.0,),
      onPressed: () {}
    ),
  ],
);

}} '

Ответы [ 2 ]

0 голосов
/ 25 января 2019
import 'package:flutter/material.dart';

class CustomAppBar extends StatefulWidget implements PreferredSizeWidget {
    CustomAppBar({Key key}) : preferredSize = Size.fromHeight(kToolbarHeight), super(key: key);

    @override
    final Size preferredSize; // default is 56.0

    @override
    _CustomAppBarState createState() => _CustomAppBarState();
}

class _CustomAppBarState extends State<CustomAppBar>{

    @override
    Widget build(BuildContext context) {
        return AppBar( title: Text("Sample App Bar") );
    }
}

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

0 голосов
/ 14 ноября 2018
Widget build(BuildContext context) {
  return new Scaffold(
    appBar: setAppBar(),
    body: new Container() // add rest of the UI
  );
}
Widget setAppBar() {
  return new AppBar(
  //backgroundColor: Colors.blue,
  //automaticallyImplyLeading: true
  elevation: 0.0, // for elevation
  titleSpacing: 0.0, // if you want remove title spacing with back button
  title:  UtilCommonWidget.addTextMedium('About US', Colors.white, 20.0, 1),
  actions: <Widget>[
    addAppBarActionWidgetProfile(icon, 30.0, 30.0, 15.0) // add your custom action widget
  ],//Action icon search as search icon, notification icon
  leading: new Material( //Custom leading icon, such as back icon or other icon
    color: Colors.transparent,
    child: new InkWell(
      onTap: () {
        Navigator.of(context).pop();
      },
      splashColor: UniQueryColors.colorGradientEnd.withOpacity(.5),
      child: new Container(
          padding: const EdgeInsets.fromLTRB(12.0, 16.0, 16.0, 16.0),
          child: UtilCommonWidget.addImage(Constant.iconBack, 19.0, 10.0))
      ),
  )
 );
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...