Macos 按字母顺序对NSPOUPMENU项排序
我想按字母顺序对Macos 按字母顺序对NSPOUPMENU项排序,macos,cocoa,sorting,nsmenuitem,nspopupbutton,Macos,Cocoa,Sorting,Nsmenuitem,Nspopupbutton,我想按字母顺序对nspopup按钮的NSMenuItems进行排序。 我检查了cocoa引用,但找不到执行此操作的函数。 是我遗漏了什么,还是我必须编写自己的排序函数? 提前感谢没有方法对项目进行排序,但是您可以: 使用itemArray它可以获得所有项目的数组 使用NSArray排序方法之一对该数组进行排序 从菜单中删除现有项目removeAllItems 不幸的是,没有多个add方法,所以对排序的数组和addItem:每个数组使用快速枚举 没有适当的方法对项目进行排序,但是您可以: 使用it
nspopup按钮的NSMenuItem
s进行排序。
我检查了cocoa引用,但找不到执行此操作的函数。
是我遗漏了什么,还是我必须编写自己的排序函数?
提前感谢没有方法对项目进行排序,但是您可以:
使用itemArray
它可以获得所有项目的数组
使用NSArray
排序方法之一对该数组进行排序
从菜单中删除现有项目removeAllItems
不幸的是,没有多个add方法,所以对排序的数组和addItem:
每个数组使用快速枚举
没有适当的方法对项目进行排序,但是您可以:
使用itemArray
它可以获得所有项目的数组
使用NSArray
排序方法之一对该数组进行排序
从菜单中删除现有项目removeAllItems
不幸的是,没有多个add方法,所以对排序的数组和addItem:
每个数组使用快速枚举
我也是这么想的。我像你说的那样使用数组并完成了任务。具体地说,我收集了NSMutableArray unsortedValues
中的标题,然后NSArray*sortedValues=[unsortedValues sorteddarrayingselector:@selector(localizedCaseInsensitiveCompare:)代码>(使用nspoupbutton=mymenu)[mymenu addItemsWithTitles:sortedvalue]代码>谢谢你的回复顺便说一下:)这也是我想出来的。我像你说的那样使用数组并完成了任务。具体地说,我收集了NSMutableArray unsortedValues
中的标题,然后NSArray*sortedValues=[unsortedValues sorteddarrayingselector:@selector(localizedCaseInsensitiveCompare:)代码>(使用nspoupbutton=mymenu)[mymenu addItemsWithTitles:sortedvalue]代码>谢谢您的回复(顺便说一句:)