Можно ли установить границы для представления до того, как он будет показан
Вопрос
-(void)CallingView2{
SettingsViewController *aSettingsView = [[SettingsViewController alloc] initWithNibName:@"Settings" bundle:nil];
[self setSettingsViewController:aSettingsView];
[aSettingsView release];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0];
//setting the animation
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:window cache:YES];
[self.window addSubview:[settingsViewController view]];
**[[settingsViewController view] setBounds:CGRectMake(0, -30, 320, 480)];**
[UIView commitAnimations];}
Я поставил код между звездами в коде, где я делаю мою анимацию, и он работает, она движется, как следует, но теперь проблема в том, что когда я поворачиваю к представлению, я могу видеть, когда вид движется вниз. Можно ли установить границы для представления, прежде чем он отображается, чтобы пользователь не мог видеть, когда он движется 30px вниз каждый раз, когда он переходит в настройки
Решение
Ваша проблема заключается в том, что вы устанавливаете границы просмотра в блоке анимации. Происхождение зрения будет анимировать из (0,0) до (0, -30) в течение того времени, чтобы выполнить переход Flip.
Установка геометрии просмотра в ViewSidload контроллера просмотра будет лучшим подходом.
Не связан с StackOverflow