JASidePanels 修复右面板边界

JASidePanels fix right panel bounds

我正在使用 JASidePanels 在屏幕右侧显示 viewController。 控制器以这种方式从 JASidePanelController 子类从主故事板加载:

-(void)awakeFromNib{

    UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]];

    TRMPracticeViewController *practiceVC = [mainStoryboard instantiateViewControllerWithIdentifier:@"Practice"];
    TRMPracticeSetupViewController *practiceSetup = [mainStoryboard instantiateViewControllerWithIdentifier:@"PracticeSetupVC"];

    [self setCenterPanel:practiceVC];
    [self setRightPanel:practiceSetup];
    [self setRightFixedWidth:practiceVC.view.frame.size.width/3.0f];

}

TRMPracticeSetupViewController 在故事板中有一个 200px x 320px 的固定框架,一旦控制器加载并添加到侧面(或在至少与屏幕尺寸成比例的宽度)。

然而,一旦 vc 被加载并添加,它的框架被设置为等于中心视图控制器,它当然具有屏幕的大小。因此,右侧 vc 内的视图位于中心 vc 下方,因为自动布局约束将其边距固定到容器边界。

如何将右面板边界宽度固定为例如200 像素?

JASidePanelController 有一种方法可以设置左面板或右面板的固定宽度。只需将此添加到您的代码中:

self.rightFixedWidth = 200.0f;