Flutter 如何将新项目添加到选择文本菜单?

Flutter 如何将新项目添加到选择文本菜单?,flutter,menu,Flutter,Menu,如何将新项目添加到选择文本弹出菜单(如复制/粘贴/剪切/item2) 在“颤振”自定义文本选择菜单中,没有简单的方法可以完成此操作,但有一种方法可以帮助完成此操作。这涉及到包的创建。但是,如果您使用这个包(我建议您使用),只需将希望具有此功能的小部件包装在FocusedMenuHolder中即可。自述文件包含以下示例: Expanded( child: GridView( physics: BouncingScrollPhys

如何将新项目添加到选择文本弹出菜单(如
复制/粘贴/剪切/item2

在“颤振”自定义文本选择菜单中,没有简单的方法可以完成此操作,但有一种方法可以帮助完成此操作。这涉及到包的创建。但是,如果您使用这个包(我建议您使用),只需将希望具有此功能的小部件包装在
FocusedMenuHolder
中即可。自述文件包含以下示例:

 Expanded(
                child: GridView(
                  physics: BouncingScrollPhysics(),
                  gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 2),
                  children: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]

                       // Wrap each item (Card) with Focused Menu Holder
                      .map((e) => FocusedMenuHolder(
                        menuWidth: MediaQuery.of(context).size.width*0.50,
                        blurSize: 5.0,
                        menuItemExtent: 45,
                        menuBoxDecoration: BoxDecoration(color: Colors.grey,borderRadius: BorderRadius.all(Radius.circular(15.0))),
                        duration: Duration(milliseconds: 100),
                        animateMenuItems: true,
                        blurBackgroundColor: Colors.black54,
                        menuOffset: 10.0, // Offset value to show menuItem from the selected item
                        bottomOffsetHeight: 80.0, // Offset height to consider, for showing the menu item ( for example bottom navigation bar), so that the popup menu will be shown on top of selected item.
                        menuItems: <FocusedMenuItem>[
                          // Add Each FocusedMenuItem  for Menu Options
                          FocusedMenuItem(title: Text("Open"),trailingIcon: Icon(Icons.open_in_new) ,onPressed: (){
                            Navigator.push(context, MaterialPageRoute(builder: (context)=>ScreenTwo()));
                          }),
                          FocusedMenuItem(title: Text("Share"),trailingIcon: Icon(Icons.share) ,onPressed: (){}),
                          FocusedMenuItem(title: Text("Favorite"),trailingIcon: Icon(Icons.favorite_border) ,onPressed: (){}),
                          FocusedMenuItem(title: Text("Delete",style: TextStyle(color: Colors.redAccent),),trailingIcon: Icon(Icons.delete,color: Colors.redAccent,) ,onPressed: (){}),
                        ],
                        onPressed: (){},
                        child: Card(
                              child: Column(
                                children: <Widget>[
                                  Image.asset("assets/images/image_$e.jpg"),
                                ],
                              ),
                            ),
                      ))
                      .toList(),
                ),
              ),
扩展(
子:GridView(
物理:弹跳CrollPhysics(),
gridDelegate:SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount:2),
儿童:[1,2,3,4,5,6,7,8,9,10,11,12]
//用聚焦菜单夹包裹每个项目(卡片)
.map((e)=>FocusedMenuHolder(
menuWidth:MediaQuery.of(context).size.width*0.50,
尺寸:5.0,
菜单范围:45,
MenuBoxEdition:BoxEdition(颜色:Colors.grey,borderRadius:borderRadius.all(Radius.circular(15.0)),
持续时间:持续时间(毫秒:100),
AnimateNuitems:对,
blurBackgroundColor:Colors.black54,
menuOffset:10.0,//用于显示选定项的menuItem的偏移值
ButoOffSeTeHe: 80、//偏移高度考虑,用于显示菜单项(例如底部导航栏),以便弹出菜单将显示在选定项目的顶部。
菜单项:[
//为菜单选项添加每个FocusedMenuItem
FocusedMenuItem(标题:文本(“打开”),跟踪图标:图标(图标。在新图标中打开),按下:(){
push(context,MaterialPageRoute(builder:(context)=>ScreenTwo());
}),
FocusedMenuItem(标题:Text(“Share”)、trailingIcon:Icon(Icons.Share)、onPressed:(){}),
FocusedMenuItem(标题:文本(“收藏夹”)、拖尾图标:图标(Icons.Favorite_border)、ON按下:(){}),
FocusedMenuItem(标题:Text(“删除”,样式:TextStyle(颜色:Colors.redAccent))),trailingIcon:Icon(图标.删除,颜色:Colors.redAccent,),onPressed:(){}),
],
按下:(){},
孩子:卡片(
子:列(
儿童:[
Image.asset(“assets/images/Image_$e.jpg”),
],
),
),
))
.toList(),
),
),

当选择文本出现在选择菜单项(如复制、粘贴或剪切)时,请提供更多信息,并添加新项目和新操作