我对objective-c很陌生,我正在尝试使用for循环在0.0 Alpha设置标签数组。有人可以帮我吗?
NSArray *fadeLabels = @[@"_lonLabel", @"_firstLat",@"_firstLon",@"_firstReal",@"_firstMagnetic",@"_firstSpeed",@"_speedLabel",@"_realNorthLabel",@"_magneticNorthLabel"];
for (int i=0; i<[fadeLabels count]; i++) {
[fadeLabels objectAtIndex:i];
//setAlpha:0.0f?
}
使用视图数组而不是字符串数组。 在数组中插入视图。
NSArray *fadeLabels = @[ _lonLabel, _firstLat, _firstLon, _firstReal, _firstMagnetic, _firstSpeed, _speedLabel, _realNorthLabel, _magneticNorthLabel];
for (int i=0; i<[fadeLabels count]; i++) {
UIView *view = (UIView *)[fadeLabels objectAtIndex:i];
[view setAlpha:0.0f];
}
您正在分配带有名称String
的数组equalTo
您的UILabel
对象,因此您需要
像这样替换数组元素
@"_lonLabel"
到_lonLabel
NSArray *fadeLabels = @[ _lonLabel, _firstLat, _firstLon, _firstReal, _firstMagnetic, _firstSpeed, _speedLabel, _realNorthLabel, _magneticNorthLabel];
for (int i=0; i<[fadeLabels count]; i++) {
UILabel *label = (UILabel *)fadeLabels[i];
label.alpha = 0.0;
}
您还应该最好使用for...in
而不是"旧"for
。
NSArray *fadeLabels = @[ _lonLabel, _firstLat, _firstLon, _firstReal, _firstMagnetic, _firstSpeed, _speedLabel, _realNorthLabel, _magneticNorthLabel];
for (UILabel *label in fadeLabels) {
label.alpha = 0.0;
}