图标未在flutter中出现在Popupmenubutton中



我正在尝试在图标下方下方创建一个扑朔迷离的弹出窗格。但是,图标没有显示。我正在使用此问题中建议的代码:是否可以在扑朔迷离的Iconbutton中使用dropdownbutton?但是试图使其适应我的小部件树。

我附上了我尝试过的代码样本。

@override
  Widget build(BuildContext context) {
    return new Container(
      height: MediaQuery.of(context).size.height,
      child: SingleChildScrollView(
        child: new Column(
          crossAxisAlignment: CrossAxisAlignment.center,
          mainAxisSize: MainAxisSize.max,
          children: <Widget>[
            new Container(
              height: 220.0,
              width: MediaQuery.of(context).size.width,
              child: new GestureDetector(
                onTap: () {
                  FocusScope.of(context).requestFocus(new FocusNode());
                },
                child: Column(
                  children: <Widget>[
                    SizedBox(height: 40.0),
                    Row(
                      children: <Widget>[
                        Expanded(
                          child: Stack(
                            children: [
                              Center(
                                child: Text(
                                  'Profile',
                                  textAlign: TextAlign.center,
                                  style: TextStyle(
                                    fontFamily: 'Lato',
                                    color: Colors.white,
                                    fontSize: 50.0,
                                    fontWeight: FontWeight.w700,
                                  ),
                                ),
                              ),
                              Positioned(
                                right: 8,
                                child: Row(
                                  crossAxisAlignment: CrossAxisAlignment.center,
                                  mainAxisAlignment: MainAxisAlignment.center,
                                  children: <Widget>[
                                    Padding(padding: EdgeInsets.only(top: 400)),
                                    PopupMenuButton<String>(
                                      icon: Icon(
                                        Icons.settings,
                                        color: Colors.white,
                                        size: 30.0,
                                      ),
                                      onSelected: choiceAction,
                                      itemBuilder: (BuildContext context) {
                                        return Constants.choices.map((String choice) {
                                          return PopupMenuItem<String>(
                                            value: choice,
                                            child: Text(choice),
                                          );
                                        }).toList();
                                      },
                                    ),
                                  ],
                                ),
                              ),
                            ],
                          ),
                        ),
                      ],
                    ),

我在颤音中也有类似的问题:构建一个我打算用基本IconPopupMenuItemPopupMenuButton

但是,由于某些未知原因,未显示图标。我通过使用ListTile构建器来解决,灵感来自CheckedPopupMenuItem的源代码。

enum MyMenuEntries { previous, next }
class MyMenu extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return PopupMenuButton<MyMenuEntries>(
      onSelected: (MyMenuEntries entry) {},
      itemBuilder: (BuildContext context) => [
        PopupMenuItem<MyMenuEntries>(
          value: MyMenuEntries.previous,
          child: ListTile(leading: Icon(Icons.arrow_back), title: Text("Previous")),
        ),
        PopupMenuItem<MyMenuEntries>(
          value: MyMenuEntries.next,
          child: ListTile(leading: Icon(Icons.arrow_forward), title: Text("Next")),
        ),
      ],
    );
  }
}

最新更新