【发布时间】:2013-06-19 18:07:08
【问题描述】:
我正在使用ViewDeck 为我的 iPad 应用程序中的滑动 UI 提供动力,但我遇到了一些问题。
无论旋转如何,我都想将 leftViewController 调整为特定大小。我必须设置 ViewDeck 的代码如下哦,我正在使用情节提要。
- (id)initWithCoder:(NSCoder *)aDecoder
{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
UINavigationController *navigationController = [storyboard instantiateViewControllerWithIdentifier:@"leftViewController"];
JWTimerGroupsViewController *timerGroupsViewController = navigationController.viewControllers[0];
IISideController *constrainedSizeLeftViewController = [[IISideController alloc] initWithViewController:navigationController];
JWMainTableViewController *middleViewController = (JWMainTableViewController *)[storyboard instantiateViewControllerWithIdentifier:@"middleViewController"];
[timerGroupsViewController setDelegate:middleViewController];
self = [super initWithCenterViewController:middleViewController leftViewController:constrainedSizeLeftViewController];
self.centerhiddenInteractivity = IIViewDeckCenterHiddenNotUserInteractiveWithTapToClose;
/* This below IS NOT the size of the left view controller? Just seems odd that it isn't */
[super setLeftSize:200];
[super setSizeMode:IIViewDeckViewSizeMode];
if (self) {
// Add any extra init code here
}
return self;
}
setLeftSize 似乎设置了topViewControllers 的宽度?这使得左视图控制器在旋转时大小不一致。
当打开 topVC 然后旋转设备时,我还看到了一些非常可怕的块状阴影。
是否可以固定左侧 ViewController 的大小和顶部 VC 在 ViewDeck 中打开的数量?
编辑
我刚刚找到了这个方法的参考:
IISideController *constrainedSizeLeftViewController = [[IISideController alloc] initWithViewController:navigationController constrained:200];
这会将左视图控制器限制为特定值。但是现在还是没有办法让顶级VC开到那个宽度?!
【问题讨论】:
-
我真的不认为你可以。浏览了头文件,看不到任何东西。现在已移至允许固定大小的 ECSlidingViewController。
标签: ios uiviewcontroller viewdeck