在 iPad 中使用垂直选项卡时,UITabBarController 似乎将选项卡的数量限制为 8。
但我想显示 9 个或更多选项卡。
起初,我只将第 1~7 个选项卡设置为 UITabBarController,
并在 UITabBarController 之外使用第 8 个和第 9 个选项卡,如下源代码。
它显示 9 个选项卡,但会导致一些问题,例如工具栏损坏、未经许可旋转等。
有什么方法可以正确显示 9 个或更多选项卡?
#define RT_TABMEMU_ITEM_MAX 8
#define RT_TABMEMU_ITEM_MAX_WITH_MORE 7
- (void)setSelectedViewController:(UIViewController *)selectedViewController {
...
// If the amount of viewController is less than 9,
// or index of selectedViewController is 0~6,
// set selectedViewController to UITabBarController
if (!(RT_TABMEMU_ITEM_MAX < [self.viewControllers count]
&& RT_TABMEMU_ITEM_MAX_WITH_MORE <= [self.viewControllers indexOfObject:selectedViewController])) {
[super setSelectedViewController:selectedViewController];
}
...
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UIViewController *selectedController = (self.viewControllers)[indexPath.row];
if (self.selectedViewController != selectedController) {
[self setSelectedViewController:selectedController];
...