2010-07-11 91 views
0

比方說,我有幾行代碼來闡明給定的UILabel變量的具體設置:如何將參考變量設置爲另一個變量/ UILabel變量?

numberMarkings[selectedBoxX][selectedBoxY][selectedSquareX][selectedSquareY][selectedNoteX][selectedNoteY].text = @"derp";  
numberMarkings[selectedBoxX][selectedBoxY][selectedSquareX][selectedSquareY][selectedNoteX][selectedNoteY].center.x = 5; 
numberMarkings[selectedBoxX][selectedBoxY][selectedSquareX][selectedSquareY][selectedNoteX][selectedNoteY].center.y = 3; 

我想建立一個參考變量(在PHP & $ VARNAME)爲這個龐大的數組索引指定在Obj-C中變量。做這個的最好方式是什麼?

回答

2

只需使用一個指針:

UILabel* label = numberMarkings[selectedBoxX][selectedBoxY][selectedSquareX][selectedSquareY][selectedNoteX][selectedNoteY]; 
label.text = @"derp"; 
label.center.x = 5; 
label.center.y = 3; 

既然你不寫入到陣列中,你不需要什麼比這票友。如果要覆蓋數組中的值,則可以使用指向指針的指針:

UILabel** label_in_array = &numberMarkings[selectedBoxX]/* ... */[selectedNoteY]; 
// Write to the label 
UILabel* label = *label_in_array; 
label.text = @"derp"; 
// Write to the array 
[label release]; 
*label_in_array = [[UILabel alloc] init]; // Now numberMarkings[][][...][] 
              // holds a new uilabel object. 
相關問題