目前没有“官方”的方式来做,但你可以用一些技巧来做到这一点。
1)以通常的方式将您的视图控制器添加到笔尖中的笔尖。将笔尖字段留空。
2)创建你的故事板并添加你的视图控制器。设置类,并设置(我将使用“theID”在这个例子中)
3)添加静态布尔VAR你.m文件,执行外或接口
static BOOL aFlag = NO;
4)故事板ID在你的ViewController类重写此方法:
- (id) awakeAfterUsingCoder:(NSCoder *)aDecoder
{
if (!aFlag){
aFlag = YES;
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Storyboard" bundle:nil];
return [storyboard instantiateViewControllerWithIdentifier:@"theID"];
} else {
return self;
}
}
主要有:
- 当你从标签栏笔尖加载对象,首先调用“initWithCoder”,并且在initWithCoder,awakeAfterUsingCoder被调用之后,对象加载时没有使用nib
- ,并且在那里用另一个从storyboard加载的对象替换对象。当您从故事板加载对象时,另一个对initWithCoder和awakeAfterUsingCoder的调用会在故事板中归档,但存档在故事板中的同一类对象
- 。您可以使用该标志,以避免一个循环,并返回self(在第二个电话,对象从情节串连图板加载,以便返回自己是确定)
我试着和它的作品好;-) 如果你想在这里一个示例项目:http://www.lombax.it/files/testTabNib.zip
它的工作原理,但由于某种原因TabBarItem的图像已经消失......任何想法为什么? – Kof 2013-02-10 09:58:56
选项卡栏项目(出现在选项卡栏上的按钮)是视图控制器的属性,而不是选项卡栏的属性。所以,你必须添加一个标签栏项目到故事板中的新ViewController。您可以通过编程或简单地以图形方式进行。从ViewController下的对象库中拖放一个新的Tab Bar Item(作为一个孩子) – LombaX 2013-02-10 10:21:24