我认为这是非常直接的,但我不知道我做错了什么。我试图给多个按钮一个边框,尽管我不断地得到一个错误:
'NSMutableSet‘不是一个受支持的集合类。NSArray的预期子类。
下面是我在.h文件中的代码:
@property (retain, nonatomic) IBOutletCollection(UIButton) NSMutableSet* btn;我已经把这个和我的XIB上的按钮联系起来了。
在我的.m文件中,我将其放在viewDidLoad中:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
for (UIButton *b in self.btn) {
b.layer.borderWidth=1.0f;
b.layer.borderColor=[[UIColor blackColor] CGColor];
}
}如果你能帮忙的话谢谢你。
发布于 2013-11-10 02:18:03
我想明白了,但是是否有一种更整洁的方法在.m文件中编写代码呢?
以下是.h文件代码:
@property (strong, nonatomic) IBOutletCollection(UIButton) NSArray *btn;在.m文件中,我这样做了:
for (int i=0; i < [self.btn count]; i++)
{
[[[self.btn objectAtIndex:i]layer] setBorderWidth:1.0f];
[[[self.btn objectAtIndex:i]layer] setBorderColor:[UIColor blackColor].CGColor ];
}}
但是有这么多括号:是否有一种更简单的方法在下面写?:
[[[self.btn objectAtIndex:i]layer]
setBorderColor:[UIColor blackColor].CGColor ];https://stackoverflow.com/questions/19885129
复制相似问题