Привет всем,Xcode Удаление Некоторые подвиды с точки зрения
Я нуб и я пытался работать через это в течение нескольких дней.
Я добавляю изображения к просмотру через UItouch. В представлении содержится фон, поверх которого добавляются новые изображения. Как очистить изображения, которые я добавляю из подвью, не избавляясь от UIImage, который является фоном. Любая помощь очень ценится. Заранее спасибо.
вот код:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *) event {
NSUInteger numTaps = [[touches anyObject] tapCount];
if (numTaps==2) {
imageCounter.text [email protected]"two taps registered";
//__ remove images
UIView* subview;
while ((subview = [[self.view subviews] lastObject]) != nil)
[subview removeFromSuperview];
return;
}else {
UITouch *touch = [touches anyObject];
CGPoint touchPoint = [touch locationInView:self.view];
CGRect myImageRect = CGRectMake((touchPoint.x -40), (touchPoint.y -45), 80.0f, 90.0f);
UIImageView *myImage = [[UIImageView alloc] initWithFrame:myImageRect];
[myImage setImage:[UIImage imageNamed:@"pg6_dog_button.png"]];
myImage.opaque = YES; // explicitly opaque for performance
[self.view addSubview:myImage];
[myImage release];
[imagesArray addObject:myImage];
NSNumber *arrayCount =[self.view.subviews count];
viewArrayCount.text =[NSString stringWithFormat:@"%d",arrayCount];
imageCount=imageCount++;
imageCounter.text =[NSString stringWithFormat:@"%d",imageCount];
}
}
Ответ 1 в общем, правильно, но обратите внимание, что вы можете ограничить поиск, используя [UIView viewWithTag: 7] и не нужно перебирать каждую точку зрения. Конечно, это может ничего не сэкономить, но это хорошая вещь, чтобы знать – justin
Ребята благодарим так много за ваш вклад. Я попробую их сегодня. Я проделал долгую работу, которая должна была добавить задний фон после того, как все было очищено. Не совсем элегантный, но он сработал. –
Ваш обход очень умный, хотя он может не работать так хорошо, когда вам нужно больше контролировать свои взгляды. Если вы попытаетесь использовать 'viewWithTag:', как было предложено @justin, имейте в виду, что он вернет только первое представление, найденное с соответствующим тегом. Это очень удобный метод, когда есть только один такой вид. Если у вас много просмотров с совпадающими тегами, вы закончите итерацию, чтобы найти их все. Дополнительный совет: у просмотров есть значение тега по умолчанию, равное нулю, поэтому избегайте использования нуля в качестве идентификационного значения тега. –