2011-08-31 40 views
0

我正在尋找一種方法來根據需要的數量(1到5之間)動態創建NSString對象。然後我想使用這些字符串作爲也是動態創建的對象的名稱;在Loop中動態創建對象 - Objective C

僞代碼:

for (i=1, i <= number_of_characters, i++) 
{ 
NSMutableString* theString = [NSMutableString character]; 
[theString appendString:[NSString stringWithFormat:@"%i ",i]]; 
UILabel *theString; 
[theString release]; 
} 

,我希望能得到一些命名對象的UILabel:

character1

character2

character3

等等...

謝謝!

回答

4

您可以即時創建UILabel對象,但不能在運行時創建變量。如果你想在標籤的文本設置爲theString,那也沒問題:

NSMutableArray *labels = [NSMutableArray array]; 
for (i=1, i <= number_of_characters, i++) 
{ 
    NSMutableString* theString = [NSString stringWithFormat:@"%i ",i]; 
    UILabel *label = [[UILabel alloc] initWithFrame:someCGRect]; 
    label.text = theString; 
    [labels addObject:label]; 
    [theString release]; 
} 

現在你有一個陣列充分的標籤,每個都有一個數字作爲其文本。標籤還沒有添加到任何視圖,所以你會想要照顧。