我的UISegmentedController上有一个navigationBar。使用以下代码添加了分段控件:

@property (nonatomic) UISegmentedControl *segView;
...
- (void)viewDidLoad {
    [super viewDidLoad];

    _segView = [[UISegmentedControl alloc] initWithItems:@[@"Seg1", @"Seg2"]];
    [_segView setSelectedSegmentIndex:0];
    [_segView addTarget:self action:@selector(segmentAction:) forControlEvents:UIControlEventValueChanged];
    [self.navigationController.navigationBar addSubview:_segView];
}


当我将视图推入navigationController时,分段控件仍然存在,因此最近推送的视图的标题将与分段控件重叠。

ios - 如何使导航栏 subview 随 View 一起推送-LMLPHP

如何使用上一个视图将分段控件推入堆栈?

最佳答案

像这样在UISegmentedControlsubView中设置navigationBar而不是在titleView中添加navigationItem作为。

self.navigationItem.titleView = _segView;

关于ios - 如何使导航栏 subview 随 View 一起推送,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40548254/

10-15 14:07