Ios 如何创建显示在左侧而不是底部/顶部的选项卡栏?

Ios 如何创建显示在左侧而不是底部/顶部的选项卡栏?,ios,uitabbarcontroller,uitabbar,Ios,Uitabbarcontroller,Uitabbar,嘿,伙计们,这是我的困境。我正在尝试创建一个标签栏,它跨越从上到下的范围,定位在左侧,而不是从左到右定位在底部。我创建了一个工具栏项,它将工具栏完全放置在我想要的位置,但我希望选项卡栏是相同的,具有相同的功能,当然除了发际线在适当位置,并且工具栏项从上到下排列 这是我的工具栏代码,我知道选项卡栏的代码也会类似,我只是遇到了一个低谷 UIToolbar *toolBarLeft = [[UIToolbar alloc] init]; toolBarLeft.frame = CGRectMake(0

嘿,伙计们,这是我的困境。我正在尝试创建一个标签栏,它跨越从上到下的范围,定位在左侧,而不是从左到右定位在底部。我创建了一个工具栏项,它将工具栏完全放置在我想要的位置,但我希望选项卡栏是相同的,具有相同的功能,当然除了发际线在适当位置,并且工具栏项从上到下排列

这是我的工具栏代码,我知道选项卡栏的代码也会类似,我只是遇到了一个低谷

UIToolbar *toolBarLeft = [[UIToolbar alloc] init];
toolBarLeft.frame = CGRectMake(0, 20, 50, 568);
toolBarLeft.layer.borderColor = [UIColor lightGrayColor].CGColor;
toolBarLeft.layer.borderWidth = 0.5f;
[self.view addSubview:toolBarLeft];

我感谢你们的帮助

你需要做的要点是:

  • 子类
    UITabBarController
  • 确保默认的
    tabBar
    属性的
    hidden
    属性设置为
    YES
    (使其处于隐藏状态)并保持该状态
  • 将任何要用作选项卡栏的自定义视图添加到此子类的
    视图
    属性中(就像将视图作为子视图添加到
    UIViewController
  • 在步骤3中添加的子视图应响应触摸并具有委托属性。
    UITabBarController
    子类应该委托视图,以便它能够响应所选择的不同选项卡(以及许多其他内容)

    只要导航符合逻辑且易于理解,您的应用程序就不会因为修改选项卡栏的工作方式而被拒绝


    附录:

    对于步骤3,如果希望标签垂直堆叠,我建议使用一个
    UITableView
    子类,其中从
    tableView:heightforrowatinexpath:
    返回的值计算如下:

    - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath*)indexPath {
        CGFloat totalHeight = tableView.frame.size.height;
        CGFloat totalTabs = (CGFloat)[tableView numberOfRowsInSection:0];
        return totalHeight/totalTabs;
    }
    
    和滚动被禁用


    因为现在当触发
    tableView:didselectRowatineXpath:
    时,我们可以告诉选项卡栏控制器:
    tabBarController.selectedIndex=indexath.row

    你在使用情节提要吗?不,我想情节提要没有我想要做的功能,因为我手头几乎找不到关于这个问题的任何信息。所以我知道我必须以编程的方式来做。你可以通过故事板/xib文件来做一些。其中一些你将不得不通过编程来完成。我有点明白接下来要做什么的要点。谢谢你的帮助!