在我的应用程序中单击联系人选项卡(中键)时,我想从屏幕底部向上移动UITabBar并在其下方显示一个视图 .
但是,当我使用以下代码移动UITabBar时,UITabBarItems消失:
- (void)moveTabBarUpwards
{
[self.tabBar setFrame:CGRectMake(0, 300, self.view.frame.size.width, self.view.frame.size.height)];
//[self.tabBar.items[0] setFrame:CGRectMake(0, 300, self.view.frame.size.width, self.view.frame.size.height)];
}
结果如下:
即使选项卡消失,工具栏仍可在新位置正常运行 . 不知道为什么会这样 .
Edit
如果我将标签栏向右移动到顶部,则UITabBarItems保持在同一位置 . 如果我将y移动到10,我会得到以下结果(如您所见,UITabBarItems仍然可见,但稍微向下移动):
1 回答
我怀疑直接改变iOS的标准UI元素帧是一个好点 . 例如,
UINavigationBar
也是如此 .我建议您使用
UIButtons
创建自己的UIView
模型,并将子VC作为选项卡创建父视图控制器 . 通过这种方式,您将在未来的iOS版本中100%安全,因为除了Apple之外没有人真正知道iOS的任何给定组件将采用哪种方式 .