0

我正在将 ECSlidingViewController 用于 iPad 应用程序,我正在尝试获取 UINavigationController 作为母版页(菜单),它将在主 UIViewController 的左侧显示。

为此,UINavigationCONtroller 需要一个特定的宽度,否则它会变成不需要的全宽。

我正在使用情节提要并像这样加载视图控制器:

- (void)viewDidLoad
{
    [super viewDidLoad];

    // Setup the view controllers
    self.topViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"MainTop"];    
    self.underLeftViewController  = [self.storyboard instantiateViewControllerWithIdentifier:@"Menu"];
}

如何将其宽度限制为 320px?我知道我必须设置框架,它只是在哪里以及如何设置。

4

1 回答 1

0

好的,一旦我想到它,这实际上很容易。我确保我的菜单视图控制器嵌入在情节提要的 UINavigationController 中。从菜单 VC 中删除 storyboardID 并将其添加到 UINavigationController。

然后我继承了 UINavigationController 并将以下内容添加到 viewDidLoad 方法中:

- (void)viewDidLoad
{
    [super viewDidLoad]; 

    [self.slidingViewController setAnchorRightRevealAmount:320.0f];
    self.slidingViewController.underLeftWidthLayout = ECFixedRevealWidth;

}

从原始菜单 VC viewDidLoad 方法中删除该代码。阅读 ECSlidingViewController 添加 ECFixedReveal 的文档将调整 VC 的大小以匹配 setAnchorRightRevealAmount 值。

现在我在显示的左侧菜单中有一个导航控制器。

于 2013-05-15T16:45:07.950 回答