我正在尝试以UISegmentedControl
编程方式添加titleView
一个UINavigationController
. 但它没有出现。经过进一步调查,我发现如果未根据Apple 文档titleView
设置为,则该属性将被忽略。所以我将它设置为但分段控件仍然没有显示出来!leftBarButtonItem
nil
nil
下面是我的代码。
- (void)viewDidLoad
{
[super viewDidLoad];
self.navigationItem.leftBarButtonItem = nil;
UISegmentedControl *statFilter = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:@"Personnal", @"Department", @"Company", nil]];
[statFilter setSegmentedControlStyle:UISegmentedControlStyleBar];
self.navigationItem.titleView = statFilter;
}
我应该怎么办?我在这里想念什么?
谢谢。
编辑:
感谢所有的回复。但是,它们都不适合我,所以我进行了更深入的研究。这一定是我布置申请的方式。我可能应该早点提到这一点。道歉。
我正在创建的是一个 Storyboard 应用程序。主控制器是一个UITabBarController
. 单击某个选项卡时,我想显示一个UITableViewController
. 由于您无法在 a 中显示导航栏UITableViewController
,因此我发现我必须在其中添加 aUINavigationController
并实现 a UITableViewController
。这就是我的应用程序的基本外观,
该仪表板视图控制器连接到从类继承的UINavigationController
类。也许这就是问题所在?
因为我刚刚创建了一个小型测试应用程序,所以将 aUIViewController
嵌入到 a 中UINavigationController
并编写了我在上面的原始问题中发布的代码UIViewController
ViewDidLoad 和分段控件显示得很好。现在我不知道如何在我的主应用程序中做同样的事情,因为没有其他视图控制器或任何连接到导航控制器的东西。
对不起,如果我让事情变得更糟。如果有任何不清楚的地方,请发表评论。