添加多个samve视图

时间:2011-03-30 08:44:33

标签: xcode view foreach addsubview

我搜索了网络和书籍,但是找不到答案。 (也许是因为我以错误的方式搜索,或者每个人都知道答案,除了我)

所以我的问题是这样的: 我有一个视图(在Interface builder中制作),因为我知道我需要更多看起来相同的视图。我知道如何添加1个视图(或更多),但问题是,我不知道数据库中会有多少产品。 因此,对于每个产品,我需要添加另一个具有不同数据的视图。 现在唯一的问题是,如何添加多个视图?

如果总有5种产品,我可以这样做:

ProductController *productfirstController;
ProductController *productsecondController;
...
[scrollview addSubview:productfirstController.view];
[scrollview addSubview:productsecondController.view];
...

但是就像你看到的那样,这是一种可怕的编程方式。

我的第一个想法是,如果我可以使用这样的字符串: (iInt是lus中的整数,最后加1)

NSString *productController = "productController%d',iInt;

但在这里我无法进一步发展。

有人知道如何解决这个问题吗?

提前致谢!

1 个答案:

答案 0 :(得分:0)

使用NSArray而不是为视图使用单个变量。使用循环将其添加到NSArrayscrollview。这里详细说明:

NSArray *productViews = [[NSArray alloc] init];

ProductController *productController;
for (...) {
    productController = [[ProductController alloc] init...];

    [scrollview addSubview:productfirstController.view];
    [productViews addObject:productfirstController];
    [productController release];
}