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 の幅を設定するように見えますか? これにより、回転時に左のView Controllerのサイズが一貫しなくなります。
また、topVC を開いてからデバイスを回転させると、非常にひどいブロック状の影が表示されます。
左側の ViewController のサイズと上部の VC が ViewDeck で開く量を修正することは可能ですか?
編集
このメソッドへの参照を見つけました:
IISideController *constrainedSizeLeftViewController = [[IISideController alloc] initWithViewController:navigationController constrained:200];
左のViewControllerを特定の値に制限します。しかし、トップ VC をその幅に開く方法はまだありませんか?!