标签: popupmenubutton

从 Flutter PopupMenuButton 中删除内边距

有什么想法如何从 Flutter PopupmenuButton 中删除巨大的填充吗?像ShrinkWrap 或者甚至可以使用的替代小部件之类的东西?它破坏了我的元素的对齐。

我尝试将其设置padding为 0 但完全没有效果。

padding: EdgeInsets.all(0)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

在此输入图像描述

popupmenubutton flutter

10
推荐指数
1
解决办法
1万
查看次数

Flutter Override PopupMenuButton Widget 防止软键盘关闭

在我的 flutter 移动应用程序中,我使用了一个放置在视图底部的 PopupMenuButton。如果我点击它,软键盘会被关闭,因为我猜文本输入失去了焦点。所以弹出菜单没有显示在正确的位置。

我想覆盖此行为以防止 PopupMenuButton 关闭键盘。也许通过扩展 PopupMenuButton 类?但我真的不知道该怎么做。

点击按钮前打开键盘:

菜单位置不对:

extends popupmenubutton flutter

8
推荐指数
1
解决办法
1888
查看次数

flutter 中 PopupMenuButton 的自定义形状

我想在 flutter 中更改 PopupMenuButton 的形状,想在顶部添加一个三角形,如下图所示,我在 google 上花了很多时间,但没有取得任何成就,请帮助我,我是 flutter 新手,所以我不这样做知道如何更改此默认容器,现在它只有白色圆形容器,白色箭头/三角形未添加在其顶部。请帮忙,提前致谢

 popUpMenu= PopupMenuButton<String>(
     key: _menuKey,
     offset: Offset(50,100),
     padding: EdgeInsets.all(0.0),
     onSelected: (value) {
       if (value == "Tax & Additional Charges") {
         endDrawerController.drawerKey.value =
             EndDrawerKeys.TaxAndAdditionalChargesEndDrawer;
         endDrawerController.scaffoldKey.currentState.openEndDrawer();
         print("Entering in tax");
       } else if (value == "Hold this Invoice") {
         endDrawerController.drawerKey.value =
             EndDrawerKeys.HoldInvoiceEndDrawer;
         endDrawerController.scaffoldKey.currentState.openEndDrawer();
       }
     },
     shape: RoundedRectangleBorder(
         borderRadius: BorderRadius.all(Radius.circular(10.h))),
     itemBuilder: (context) => [
       PopupMenuItem(
         value: "Tax & Additional Charges",
         child: popUpMenuSingleItem(
             icon: AppAssets.DeliveryIcon,
             text: "Tax & Additional Charges",
             topMargin: 15.h),
       ),
       PopupMenuItem(
         value: "Hold this …
Run Code Online (Sandbox Code Playgroud)

customization shapes popupmenubutton flutter triangle

8
推荐指数
1
解决办法
9491
查看次数

flutter CheckedPopupMenuItem 选择项目后保持菜单打开

我试图让菜单保持打开状态,以便我可以一次选择多个类别,而无需在每次选择后快速返回页面。

如果它可以像 Excel 过滤数据(或 Libreoffice Autofilter)那样运行就完美了

添加了截图

任何想法,将不胜感激!

当前应用程序 我的目标示例

代码:

import 'package:flutter/material.dart';

void main() {   return runApp(MaterialApp(
    home: MenuDemo(),   )); }

class MenuDemo extends StatefulWidget {   const MenuDemo({Key key}) : super(key: key);

  static const String routeName = '/material/menu';

  @override   MenuDemoState createState() => new MenuDemoState(); }

class MenuDemoState extends State<MenuDemo> {   final GlobalKey<ScaffoldState> _scaffoldKey = new GlobalKey<ScaffoldState>();

  final String _checkedValue1 = 'One';   final String _checkedValue2 = 'Two';   final String _checkedValue3 = 'Free';   final String
_checkedValue4 = 'Four';   List<String> _checkedValues;

  @override …
Run Code Online (Sandbox Code Playgroud)

popupmenubutton flutter

6
推荐指数
1
解决办法
1178
查看次数

选择项目后如何不关闭 PopUpMenuButton?

我正在使用 flutter PopUpMenuButton。我想要的是,当我选择菜单上的任何项目时,不应关闭弹出窗口,而是让我从弹出窗口中选择多个值。文档说您可以覆盖 handleTap 属性,但我不清楚该怎么做那?这是有记录的

 ///The [handleTap] method can be overridden to adjust exactly what happens when
/// the item is tapped. By default, it uses [Navigator.pop] to return the
/// [PopupMenuItem.value] from the menu route.

    void handleTap() {
    Navigator.pop<T>(context, widget.value);
  }
Run Code Online (Sandbox Code Playgroud)

overriding popupmenubutton dart-pub flutter flutter-layout

4
推荐指数
1
解决办法
3972
查看次数

长按时颤动弹出菜单按钮

我试图在长按时创建的自定义小部件上显示菜单上下文(点击时有另一种行为)。

我尝试将 GestureDetector 与 onLongPress 结合使用并使用函数 showMenu,但它在角落显示菜单,而不是在按下的小部件上方。我已经看到了一种解决方法来获取小部件的位置并将其传递给 showMenu,但对我来说它看起来很混乱。

 return new GestureDetector(
    child: _defaultBuild(),
    onTap: onTap,
    onLongPress: () {
      showMenu(
        items: <PopupMenuEntry>[
          PopupMenuItem(
            //value: this._index,
            child: Row(
              children: <Widget>[
                Text("Context item1")
              ],
            ),
          )
        ],
        context: context,
        position: _getPosition(context)
      );
    }
);
RelativeRect _getPosition(BuildContext context) {
  final RenderBox bar = context.findRenderObject();
  final RenderBox overlay = Overlay.of(context).context.findRenderObject();
  final RelativeRect position = RelativeRect.fromRect(
  Rect.fromPoints(
    bar.localToGlobal(bar.size.bottomRight(Offset.zero), ancestor: overlay),
    bar.localToGlobal(bar.size.bottomRight(Offset.zero), ancestor: overlay),
  ),
  Offset.zero & overlay.size,
);
return position;
}
Run Code Online (Sandbox Code Playgroud)

我也尝试过使用 PopupMenuButton 但无法在 LongPressed 上显示菜单。 …

popupmenubutton long-press flutter

2
推荐指数
1
解决办法
3162
查看次数

单击 CheckMenuItem (JavaFX) 时如何防止 MenuButton 关闭

我是 Java 新手,我想知道如何在单击项目时防止 MenuButton 弹出窗口关闭,我尝试了以下功能,我在本网站上找到了该功能,但似乎没有任何作用。我需要这个来克隆我的 C# 应用程序,以便学习 Java。

@FXML
private MenuButton menuButton;

@FXML
    void initialize() {
        CheckMenuItem menuButtonItem1 = new CheckMenuItem("Item 1");
        CheckMenuItem menuButtonItem2 = new CheckMenuItem("Item 2");
        CheckMenuItem menuButtonItem3 = new CheckMenuItem("Item 3");
        menuButtonItem1.setOnAction(new EventHandler<ActionEvent>() {
        public void handle(ActionEvent e) {
           e.consume();
    }
});
        menuButtonItem2.setOnAction(new EventHandler<ActionEvent>() {
        public void handle(ActionEvent e) {
           e.consume();
    }
});
        menuButtonItem3.setOnAction(new EventHandler<ActionEvent>() {
        public void handle(ActionEvent e) {
           e.consume();
    }
});
}
Run Code Online (Sandbox Code Playgroud)

javafx popupmenubutton auto-close fxml

0
推荐指数
1
解决办法
741
查看次数