2011-09-24 44 views
0

所以我遇到了一個相當複雜的問題與我的應用程序。 我有大約40個UIImageView對象,當不同的位置堆疊時需要顯示在不同的位置(如果img2 == NO,EX img 1需要將img 2放置)。在運行時識別一個類的名稱

我想要做的是使用「for循環」並運行所有我檢查圖像是否被選中的布爾值。 我很好奇,如果它是在所有可能的調用變量這樣

-(IBAction) button:(id) sender{ 
    scrollView.hidden = YES; 
    NSInteger i = 1; 
    (@"imagenumber%d", i) = [[UIImageView alloc] initWithFrame: CGRectMake (28, 230, 86, 26)]; 
    [[imagenumber(@"%d", i)] setImage:[UIImage imageNamed:@"csa.jpg"]]; 
    [self.view addSubview: [imagenumber(@"%d", i)]];} 
} 

其中@「影像NUMBER%d」是我NSImageView和我是一個取值範圍爲1-40。

對不起,如果這是令人困惑,我真的很感謝所有關於這個問題的任何幫助,因爲我似乎無法得到任何想法,並已在這個問題上工作了好幾個星期。

回答

0

把意見在NSMutableArray - 您可以通過索引來訪問元素的,使用快速枚舉,...如:

UIImageView *image = [[UIImageView alloc] ... 
[myMutableArray addObject:image]; 
// ... 
+0

呵呵,從來沒有想過要做到這一點, 我認爲,將工作,由於一噸! – Thermo

0

對於歡鬧的緣故,你也可以把它們放在一個內在陣列並使用指針算術。 (這很有可能就是幕後發生的事情具有更快的枚舉對於那些有興趣)

UIImageView * imageArray[40]; 

... 

for(UIImageView * this = imageArray; this; this++) 
{ 
    this = [[UIImageView alloc] initWithFrame: CGRectMake (28, 230, 86, 26)]; 
    ... 
}