ios - 如果相应的按钮是 NSArray 的元素,如何访问或分配 UIButton 标签?

标签 ios objective-c uibutton nsarray

我目前正在为 iOS 实现一个简单的纸牌游戏。我做了以下设置 UIButton firstCardButton 的按钮标签:

self.firstCardButton.tag = 1;

现在,我需要二十个按钮而不是一个。因此,我使用了一个包含所有按钮的数组,例如:

self.buttonArray=@[self.firstCardButton,self.secondCardButton, ... ];

我想我以后会改进这个。但是现在我想问的问题是:

是否可以将标签分配给数组的一个元素?我尝试了以下但没有成功:

[self.buttonArray objectAtIndex:0].tag = 1;

我的实际版本只是:

self.firstCardButton.tag = 1;
self.secondCardButton.tag = 2;
self.thirdCardButton.tag = 3;
self.fourthCardButton.tag = 4;
...

有没有人知道如何以更好的方式编写它?

提前致谢!

最佳答案

您可以使用循环来迭代您的 NSArray,并分配标签,如下所示:

for (int i = 0 ; i != buttonArray.count ; i++) {
    [[buttonArray objectAtIndex:i] setTag:i+1];
}

注意:我假设按钮不是通过 UI Builder 创建的,否则您将有机会通过在 Storyboard/NIB 文件中配置它们来设置它们的标签。

关于ios - 如果相应的按钮是 NSArray 的元素,如何访问或分配 UIButton 标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25002449/

相关文章:

ios - 按钮启动的UIImage动画

objective-c - subview 和按钮

所有 Apple 设备上的 iOS 应用照片

objective-c - 执行选择器 ARC 警告

ios - Swift 应用程序中的 AVPlayer 问题

ios - tableView beginUpdates/endUpdates block 重新加载整个表,即使为空

objective-c - 为什么我不能分配/初始化 - 得到 "Assigning retained object to unsafe property"警告?

ios - 动态创建时 UIButton 不突出显示

iOS - didSelectRowAtIndexPath 导致应用程序崩溃

iphone - 另一个速度提升可能吗?