Pet*_*zes 3 for-loop objective-c naming-conventions dynamic-variables ios
我想在for循环中使用一些动态变量名,并且难以理解如何实际引用变量.
我有一系列UILabels冠军poll0- poll8.使用for循环,我将它们的text值设置为从数组中相应数字引用的另一个值.例如:
for (int i = 0; i < [pollData count]; i++) {
label(i value).text = [NSString stringWithFormat:@"%@", [[pollData objectAtIndex:i] toString]]; //sorry for the java-esque method names, just create what I'm used to
}
Run Code Online (Sandbox Code Playgroud)
我该如何使用该i值?
你无法完全按照自己的要求去做.最好的方法是将标签放在一个数组中并循环遍历数组:
NSArray *labels = [NSArray arrayWithObjects:poll0, poll1, poll2, ..., nil];
for (UILabel *label in labels) {
label.text = [[pollData objectAtIndex:i] toString];
}
Run Code Online (Sandbox Code Playgroud)
您可能还想查看IBOutletCollections,因为它们允许您将标签分组到一个数组中,而无需编写上面的数组初始化代码.相反,您将它放在.h文件中,然后将标签插座挂钩到Interface Builder中的所有标签:
@property (nonatomic, retain) IBOutletCollection(UILabel) NSArray *labels;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6573 次 |
| 最近记录: |