3

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];

    ...
4

1 に答える 1

1

InfiniTabBarforiOSオープンソースプロジェクトを試してみることをお勧めします。これを使用すると、必要な数のタブを追加できます。私は自分のプロジェクトでそれを使用しました、そしてそれはかなり良いです!

ではごきげんよう!

これは、パブリックライセンスの下で、または作成者がライセンスについて述べているようにリリースされます。

いつものように、私のすべてのソースコードはロイヤリティフリーでアプリに使用できます。アプリをオープンソースにする場合は、ソースコードから著作権表示を削除しないように注意してください。アプリで私を帰属させる必要はありませんが、そうしていただければ幸いです。

于 2013-03-14T09:34:14.450 に答える