我有这个故事板:
我的第一个 ViewController 以编程方式将 PNG 图像作为背景:
- (void)viewDidLoad
{
[super viewDidLoad];
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bgleft"]];
}
我的第二个 ViewController 通过在 Storyboard 上选择 Clear Color 作为 Background 属性具有透明背景。
但是当它在我的 iPod 上运行时,似乎我的第二个 ViewController 具有相同的背景,但将第一个 ViewController 背景从右向左推。
我想做的是:
当 Segue 检测到时,它会将第一个 ViewController 上的所有 UI 组件从当前位置移动到左侧,所以感觉就像它全部被第二个 ViewController 推送(但不是背景,我想将背景保持在它的位置)。
然后,第二个 ViewController 上的所有 UI 组件使用我已经在 Storyboard 上设置为透明 ViewController 的 Push Transition 进入。
因此,它将在不移动背景的情况下从一个 ViewController 平滑过渡到另一个 ViewController。
我尝试使用此代码:
- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"goToViewTwo"])
{
UIViewController *view2 = segue.destinationViewController;
view2.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bgleft"]];
}
}
但我不知道如何移动/动画所有 UI 组件(按钮、标签等)以按照我描述的方式执行。请告诉我该怎么做..谢谢。