我遇到了一个有趣的情况,我有一个 iPhone 应用程序,UITableViewController
每个 3 秒显示或多或少相同的数据(你可以说这是过滤问题)。迄今为止,我为此有 3 个独立的 NIB,每个都有自己的控制器,此外,为了顶部的按钮,UITableViewController
s 在里面。UINavigationController
现在为了优化应用程序并减少它的占用空间,我将所有逻辑打包到一个通用控制器 (an UITableViewController
) 中,并且只保留了一个 NIB。公共控制器将负责过滤掉数据,并指向正确的数据。
因此,我将相同的通用控制器加载到 3 个导航控制器:
navControllerA = [[UINavigationController alloc] initWithRootViewController: commonTableController];
并将这些导航控制器添加到UITabBarController
:
navigationControllersArray = [NSArray arrayWithObjects: navControllerA, navControllerB, navControllerC, nil];
[tabController setViewControllers:[NSArray arrayWithArray:navigationControllersArray]];
现在一切都很好,选项卡显示,表格视图显示。但是,一旦您触摸下一个UITabBarItem
并返回上一个,UITableViewController
则不会显示,您只能UIWindow
在其位置看到 a。仅在UITableViewController
最后一次触摸时保持可见UITabBarItem
。
是否有某种UITabBar
我不知道的视图加载机制?