UITabBarの高さは49px(またはソースによっては50px)であることがわかりました。
私はコードでハードコードされた値をあまり使いたくないので、プログラムでタブバーの高さを取得できるかどうか疑問に思っていました。
敬具、
Niels R.
PS:私が求めている理由は、NavigationController(pushViewController)によって単にプッシュされるか、モーダル(presentModalViewController)として表示されるView Controller(テキストフィールドを含むリストビュー)があるためです。キーボードが表示されるとすぐに、ビューのサイズが小さくなりますが、View Controllerが押されてモーダルとして表示されない場合にのみタブバーが表示されることを考慮する必要があります。
私はあなたのP.S.を完全には理解していませんが、次のことができます:
tabBarController?.tabBar.frame.size.height
UITabBarコントロールの標準の高さを取得する場合は、次を実行できます。
UITabBarController *tabBarController = [UITabBarController new];
CGFloat tabBarHeight = tabBarController.tabBar.frame.size.height;
きれいな
CGRectGetHeight(self.tabBarController.tabBar.frame)
あなたのVCでこれを確認してください
bottomLayoutGuide.length
Swift 3
、次のコードでUITabBar
の高さを取得できます。
self.tabBarController!.tabBar.frame.size.height
これは、高さのCGFloat
値を返します
オブジェクトがUIView(ライブラリ内のほとんどの視覚要素)に基づいている場合、ivar "frame"からサイズを取得できます。
UITabBar
は、TabBarのフレームにアクセスして変更できるUITabBarインスタンスにアクセスできる限り、UIView
から継承されます。
CGRect myRect = myTabBar.frame;