Привет, у меня есть uiscrollview, и у меня есть один объект uiimageview внутри uiscrollview. Я запускаю приложение. затем я прокручиваю вправо в scrollview и изменения scrollview, но я не вижу следующий объект uiimageview, который я добавляю в - (void) scrollViewDidEndDecelerating: (UIScrollView *) scrollView. перед тем, как добавить следующий объект, я удалю предыдущий ... что не так?Удалить subview UIImageview от UIScrollView
, чтобы удалить объект я использовать
UIImageView *l;
for (NSInteger ko=0; ko<[[scroll subviews] count]; ko++){
if ([[[scroll subviews] objectAtIndex:0] isKindOfClass:[UIImageView class]]){
//This code never gets hit
l=[[scroll subviews] objectAtIndex:0];
[l removeFromSuperview];
l=nil;
}
}
Затем я добавить следующий объект
[прокручивать addSubview: ImageView];
Я удаляю предыдущий объект, потому что мое приложение падает, когда я добавляю 110 изображений в scrollview, поэтому мне нужно управлять памятью, я думаю. Вот почему я удаляю предыдущий объект.
Помогите пожалуйста!
Я не хочу удалять все объекты. В области uiscrollview есть объект в месте 0. Я хочу удалить первый объект, потому что хочу добавить другое. новый объект должен быть помещен в 1 место не на 0, потому что я уже прокрутил с места 0 до места 1. Если я не удаляю предыдущий объект после того, как я добавлю более 45 изображений в uiscrollview, приложение вылетает из-за проблема с памятью. Мне нужно удалить предыдущий объект в свободную память. – stefanosn
Порядок подзаголовков действительно не имеет значения, и вы не должны зависеть от него. Между индексом subview в scroll.subviews и его фактическим положением нет никакой связи. Если это то, что вы хотите, я предлагаю вам также сохранить собственный массив представлений и убедиться, что они находятся в порядке отображения. –
St3fan, не отпускать подпункты. NSArray arrayWithArray: возвращает автореализованный массив. Когда цикл событий завершается, и пул релизов пытается освободить subviews, он уже исчезнет, и ваше приложение выйдет из строя. –