将自动布局应用于 UISegmentedControl

Apply auto-layout to UISegmentedControl

我在 UISegmentedControl 中为段设置了自定义宽度。因此,SegmentedControl 不使用 auto-layout。 (在故事板中,我在 SegmentedControl 的所有 4 个边上应用了 constraint。)

这是我的代码:

CGFloat segmentWidth = self.segment.frame.size.width;

[self.segment insertSegmentWithTitle:@"titleName" atIndex:2 animated:NO];    
[self.segment setWidth:segmentWidth / 6 forSegmentAtIndex:1];
[self.segment setWidth:segmentWidth / 6 forSegmentAtIndex:2];

[self.segment setWidth:segmentWidth / 3 forSegmentAtIndex:0];

这里有一张图片来说明这段代码的作用:

有没有办法将 auto-layout 添加到 segments

问题是你的代码放错地方了。放到viewDidLayoutSubviews就万事大吉了