Рекурсивное добавление self.view в self.view?

Мне нужно добавить к моему активному основному представлению новое подпредставление. И это подпредставление должно быть со всем содержимым, размещенным в основном представлении. Subview имеет рамку = view.frame/2. Я пытаюсь реализовать некоторые решения (ниже), но результатов нет ((

Прежде всего

 CGRect frame = CGRectMake(100, 140, 250, 250);
 UIView *view = [self.view copy];
 view.frame = frame;
 [self.view addSubview:view ];
 [view release];

потом

 UIView *View = [[[NSBundle mainBundle] loadNibNamed:@"CurrentTemplate" owner:self options:nil] objectAtIndex:0];
 View.frame = CGRectMake(100, 140, 250, 250);
 [self.view addSubview:view ];
 [view release];

Есть идеи?


person beryllium    schedule 05.11.2009    source источник
comment
Предполагается, что представление отличается от представления, потому что вы смешиваете представление в верхнем регистре и представление в нижнем регистре ... может быть проблема с форматированием?   -  person Kenny Winker    schedule 05.11.2009


Ответы (1)


Если я правильно понимаю ваш вопрос, вы хотите переместить все подпредставления self.view в новое представление, а затем добавить это новое представление обратно в self.view?

Возможно, что-то вроде этого может сделать это:

// Create a new empty view
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(100, 140, 250, 250)];

// Add each of the children to this new view
NSArray *views = [NSArray arrayWithArray:self.view.subviews];
for (UIView *child in views)
  [view addSubview:child];

// Add the new view as the child of self.view
[self.view addsubview:view];
[view release];

Надеюсь это поможет,

Сэм

person deanWombourne    schedule 05.11.2009