iOS创建UITabBar who';s项可以由用户动态更改

iOS创建UITabBar who';s项可以由用户动态更改,ios,objective-c,uiviewcontroller,uitabbar,Ios,Objective C,Uiviewcontroller,Uitabbar,我想用三个项目创建uitabar 每个项目将导致不同的UIViewController uitabar必须是可编辑的,这样用户可以在使用应用程序时更改项目 例如: 在uitabar中,默认情况下我有itemOne、itemTwo和itemThree 当用户点击itemThree时,他将显示一个选择视图,在该视图中他可以选择itemFour、itemFive、itemSix。。。替换uitabar中的一项 因此,如果他决定将itemSix替换为itemTwo,他必须点击itemTwo,然后在选择视

我想用三个项目创建
uitabar

每个项目将导致不同的
UIViewController

uitabar
必须是可编辑的,这样用户可以在使用应用程序时更改项目

例如:

uitabar
中,默认情况下我有itemOne、itemTwo和itemThree

当用户点击itemThree时,他将显示一个选择视图,在该视图中他可以选择itemFour、itemFive、itemSix。。。替换
uitabar
中的一项

因此,如果他决定将itemSix替换为itemTwo,他必须点击itemTwo,然后在选择视图itemSix中,项目必须替换

因此,现在当用户在
uitabar
中点击itemSix时,应用程序必须将他带到与itemSix连接的
UIViewController

我的想法是创建
UIViewController
,其中
UIView
作为自定义
uitabar
ContainerView
,后者将作为不同
UIViewController
的占位符


请您评论一下我的想法,并告诉我您的建议,我应该如何实现这种功能。

uitabar
上的
-beginCustomizedItems:
-endCustomizedAnimated:
方法可以允许类似的操作

-(无效)开始初始化项:(NSArray*)项
items
参数应包含可添加到选项卡栏的所有项目不在
项目中的可见项目
是固定的,用户无法删除或替换这些项目


(emphasis mine)

如果您有五个以上的选项卡,
uitabar
将生成一个“更多”项,允许您准确地执行此操作。唯一的区别是始终显示四个选项卡,而不是三个。我不能使用“更多”。我必须始终有三个项目和一个特殊的选择视图来处理选择。您可以使用
UICollectionView
的子类自定义
Tab Bar
,我也不能使用它。我必须使用我的自定义演示视图,它本质上是
UICollectionView
,因为如果用户需要,他还可以重新排列
UICollectionView
中的项目。因此没有iOS本机视图发挥作用。充当
uitabar
唯一解决方案的自定义
UIView
?你对此有什么看法?