我以编程方式将UISegmentedControl添加到导航栏上,将titleView放置在其中。但是正如Apple docstitleView下提到的那样,如果leftBarButtonItem不为nil,则忽略此属性。

但是我也想有后退按钮。就像他们在自己的图像中说明的一样!

下面是我添加UISegmentedControl的代码。

self.navigationItem.leftBarButtonItem = nil;
UISegmentedControl *statFilter = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:@"Filter_Personnal", @"Filter_Department", @"Filter_Company", nil];
[statFilter setSegmentedControlStyle:UISegmentedControlStyleBar];
self.navigationItem.titleView = statFilter;

还有另一种方法来添加UISegmentedControl以及“后退”按钮吗?

谢谢你。

最佳答案

试试这个

删除此行---> self.navigationItem.leftBarButtonItem = nil;
改为添加此

UISegmentedControl *statFilter = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:@"Filter_Personnal", @"Filter_Department", @"Filter_Company", nil]];
[statFilter setSegmentedControlStyle:UISegmentedControlStyleBar];
[statFilter sizeToFit];
self.navigationItem.titleView = statFilter;

唯一的变化是我添加了以下行:
[statFilter sizeToFit];

希望这可以帮助 !!!

关于ios - 导航栏中带有“后退”按钮的UISegmentedControl,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15383014/

10-13 09:25