如何在iOS中创建滑出导航面板,侧面板越过中心面板?

时间:2015-07-19 21:55:05

标签: ios objective-c animation uiviewcontroller

我跟随Tammy Coron this great tutorial。一切都很棒,我理解它是如何工作的,但我想要达到的目标有点不同。我希望中心视图是“静态的”,可以这么说,侧面板与这个中心视图重叠。 所以我应该改变这一部分:

UIView *childView = [self getLeftView];
[self.view sendSubviewToBack:childView];

[UIView animateWithDuration:SLIDE_TIMING delay:0 options:UIViewAnimationOptionBeginFromCurrentState
                animations:^{
                    _centerViewController.view.frame = CGRectMake(self.view.frame.size.width - PANEL_WIDTH, 0, self.view.frame.size.width, self.view.frame.size.height);
                }
                completion:^(BOOL finished) {
                    if (finished) {

                        _centerViewController.leftButton.tag = 0;
                    }
                }];

到别的地方。但是玩了一会儿并没有产生预期的结果。 有没有人有建议?

1 个答案:

答案 0 :(得分:1)

更改此行

_centerViewController.view.frame = CGRectMake(self.view.frame.size.width - PANEL_WIDTH, 0, self.view.frame.size.width, self.view.frame.size.height);

到这一行

childView.frame = CGRectMake(PANEL_WIDTH, 0, childView.frame.size.width, childView.frame.size.height);

也不要发送子视图,更改此行

[self.view sendSubviewToBack:childView];

到这一行

[self.view bringSubViewToFront:childView];