-(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 :(得分:1)
您的问题是您正在动画块中设置视图边界。视图原点将在执行翻转过渡所需的时间内从(0,0)动画到(0,-30)。
在视图控制器的viewDidLoad中设置视图几何体是一种更好的方法。