0

我在 IB 中创建了一个带有一些标签和自定义颜色的 UIView,并将其链接为 IBOutlet,这样我就可以在我的 viewController 中访问它。

@property (strong, nonatomic) IBOutlet UIView *tile;

虽然我想在一个循环中创建更多这个出口:

- (void)viewDidLoad {
    [super viewDidLoad];
    int i = 0;
    while (i <= 9) {
        UIView *cTile = [self.tile copy];
        [self.view addSubview:cTile];
        i += 1;
    }
}

所以我试图复制这个tile插座,然后将复制的视图添加到主视图。显然这无法完成并返回错误。

是否有可能实现这种行为并重新使用/复制 IBOutlet?

4

1 回答 1

2

我不认为你想做的事情是可能的,因为 UIView 不符合 NSCopying 协议。

最好的办法是将你的“tile”创建为 UIView 子类或为它创建一个 nib,然后你可以根据需要多次重新加载它。

于 2012-04-17T08:04:55.453 回答