dart – IconButton引发异常

前端之家收集整理的这篇文章主要介绍了dart – IconButton引发异常前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用Flutter中的一些图标制作一个简单的AppBar小部件,但我不断得到这个断言:

The following assertion was thrown building IconButton(Icon(IconData(U+0E5D2)); disabled; tooltip:

我几乎只是模仿了文档,但这是我的代码

import 'package:flutter/material.dart';

void main() {
  runApp(new MaterialApp(
  title: "Stateless Widget Example",home: new AppBar(title: new Text("App Bar"))
 ));
}

class AppBar extends StatelessWidget {
  AppBar({this.title});

  final Widget title;

  @override
  Widget build(BuildContext context) {
    return new Container(
      height: 56.0,padding: const EdgeInsets.symmetric(horizontal: 8.0),decoration: new BoxDecoration(
        color: Colors.cyan,border: new Border(
          bottom: new BorderSide(
            width: 1.0,color: Colors.black
          )
        )
      ),child: new Row (
        children: <Widget> [
          new IconButton(
            icon: new Icon(Icons.menu),tooltip: 'Navigation menu',onPressed: null,// null disables the button
          ),new Expanded(child: title)
        ]
      )
    );
  }
}

我觉得我错过了一个重要的东西.但我不完全确定.也许我的电脑只是表现得很好,因为Flutter跑步对我来说是错误的.我是Dart和Flutter的新手,所以也许我只是没有看到明显的错误.

解决方法

IconButton是一个Material Widget,因此您需要在Material父级中使用它,例如:

Widget build(BuildContext context) {
    return new Scaffold(
      appBar: new AppBar(title: new Text(widget.title),actions: <Widget>[
        new IconButton(
          icon: new Icon(Icons.favorite),tooltip: 'Favorite',onPressed: () {},),new IconButton(
          icon: new Icon(Icons.more_vert),]),body: new Center(
        child: new Text('This is the body of the page.'),);
  }

猜你在找的Flutter相关文章