Можно ли установить границы для представления перед его отображением - PullRequest
1 голос
/ 20 сентября 2010
-(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];}

Я поместил код между звездами в коде, где я фиксирую свою анимацию, и он работает, он перемещает вид так, как должен, но теперь проблема в том, что когда я поворачиваюсь к виду, я вижу, когдавид движется вниз.Можно ли установить границы для представления перед его показом, чтобы пользователь не мог видеть, когда он перемещается на 30 пикселей вниз при каждом переходе к настройкам

1 Ответ

1 голос
/ 20 сентября 2010

Ваша проблема в том, что вы устанавливаете границы просмотра в анимационном блоке. Источник представления будет анимироваться с (0,0) до (0, -30) в течение времени, необходимого для выполнения переворота.

Лучше было бы установить геометрию вида в viewDidLoad контроллера вида.

...