従来の の代わりにコントローラーを使用していUITabBarController
ます。
私が使用しているのはAKTabBarControllerです。現在、すべてが機能していますが、ジェスチャーを使用して削除したい段階が 1 つあります。
UINavigationBar
うまく削除しているので、ジェスチャーは正しいです。私が指摘できる唯一の違いは、UINavigationController
が関連する 内で開始されUIViewController
、TabBar が で初期化されることAppDelegate
です。
だから問題はここにあると思います:
ViewController から TabBarController のフレームを操作できないようです。
-(void)goFull
{
JWKAppDelegate *appdel = [[JWKAppDelegate alloc] init];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.3];
self.webView.frame = CGRectMake(0, 0, 320, 411); // (00,00 : -20, -94)
_navBar.frame = CGRectMake(0, 0, 320, 0);
appdel.tabBarController.view.frame = CGRectMake(0, 0, 320, 0);
NSLog(@"My view frame: %@", NSStringFromCGRect(appdel.tabBarController.view.frame));
[UIView commitAnimations];
}
コードでわかるように、メソッドで App Delegate を初期化し、tabBarController にアクセスしようとしています。このコードは警告やエラーを提供しませんが、アプリの実行中に何らかの理由で機能しません。
カスタム コントロールであるため、他に何かする必要があるかどうかはわかりません。また、このコントロールは、UITabBarController ではなく UIViewController からサブクラス化されています。
これは、アプリ デリゲートの次の行でプロジェクトに追加されます。[_window setRootViewController:_tabBarController];
詳細を提供する必要がある場合はお知らせください。ただし、ここで少し迷っています。