IB中的IBOutletCollection NSMutable数组顺序

时间:2012-02-06 16:28:58

标签: objective-c xcode uibutton nsmutablearray

我已将一组按钮链接到IBOutletCollection NSMutableArray; 我希望能够让每个按钮播放特定的声音; 然而,在链接它们之后,我意识到它们没有按任何特定顺序添加。 我认为界面构建器没有考虑添加按钮的顺序。 有没有什么方法可以通过代码访问界面按钮id并将其转换为整数,所以我可以编程方式将正确的声音分配给右键?

不认为是必要的,但这是我的代码:

for(int i=0;i<48;i++){
UIButton *Pad=[UIButton alloc];
[Pads addobject:Pad];
[Pad release];
[[Pads objectAtindex:i] addTarget:self action:@selector(play:) forControlEvents:UIControlEventTouchUpInside];
((UIButton*)[Pads objectAtIndex:i]).tag=i;
} 

更具体一点。在atributes检查器的界面构建器中,每个按钮都有一个标签和一个id。是否可以使用该id(或标签)以编程方式重新排序我的数组?

通过TITLE [button currentTitle]

排序进行FIXE

2 个答案:

答案 0 :(得分:3)

将每个IBOutlet的tag属性添加到i时,只需将其设置为Pads

答案 1 :(得分:2)

IBOutletCollection不支持订购。这是一个类似的问题,答案按照他们的位置命令收集内容: IBOutletCollection set ordering in Interface Builder

相关问题