-(void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];
imageView.image = [UIImage imageNamed:@"Sample.png"];
[self.view addSubview:imageView];
NSArray *subviews = [self.view subviews];
for(id element in subviews) {
if ([[element class] isKindOfClass:[UIImageView class]]) //check if the object is a UIImageView
{
NSLog(@"element is a UIImageView\n");
[element setCenter:CGPointMake(500., 500.)];
} else {
NSLog(@"element is NOT a UIImageView\n");
}
}
}
मैं उत्पादन की उम्मीद "होने का तत्व एक UIImageView है बर्ताव कर रही है, लेकिन यह वास्तव तत्व एक UIImageView नहीं है क्यों यह नहीं है वहाँ अन्य हैं कि ।। subviews सिर्फ एक ही है इसके अलावा, जब चलाने के लिए, छवि 100,100 में नहीं 500,500 की उम्मीद के रूप में प्रदर्शित किया जाता है,isKindOfClass का उपयोग करना:।? मुझे समझ नहीं आता क्यों इस कोड इस तरह से
मैंने आईडी के बजाय UIImageView का उपयोग करने के लिए कोड को बदलने की कोशिश की, और परिणाम समान थे। –
आईडी संदर्भ के रूप में इस्तेमाल किया जा सकता है। आप जो खो रहे हैं वह है कि आप गलत तरीके से KindOfClass विधि को कॉल कर रहे हैं। मेरा जवाब जांचें। –