我使用界面构建器(来自故事板)创建了一个带有两个段的UISegmentedControl,但我想以编程方式设置两个段的文本。我想这样做因为我使用NSLocalizedString来处理我的所有按钮,标签,标题等。 我在界面构建器中创建了所有内容,然后以编程方式添加文本。 我已经设法让每个项目以这种方式工作,但我找不到向UISegmentedControl添加文本的方法。
有没有办法做到这一点? 我试图使用以下内容,但因为已经在界面构建器中创建了分段控件,所以它不起作用。
[segmentedControl initWithItems:[NSArray arrayWithObjects:NSLocalizedString(@"Title 1", @"Title 1"),NSLocalizedString(@"Title 2", @"Title 2"), nil]];
非常感谢
答案 0 :(得分:185)
[segmentedControl setTitle:<YourLocalizedString> forSegmentAtIndex:0];
答案 1 :(得分:9)
使用setTitle:forSegmentAtIndex:将标题分配给细分控件的细分。
希望这会对你有所帮助。
答案 2 :(得分:9)
使用 SWIFT 4 的人的正确答案是
segmentedControl.setTitle("Your Title", forSegmentAt: 0)
答案 3 :(得分:0)
已更新:
使用下面的简单代码以编程方式设置UISegmentControl标题;
//。h文件:
@property (weak, nonatomic) IBOutlet UISegmentedControl *segmentControl;
// .m文件:
- (void)viewDidLoad {
[super viewDidLoad];
[self.segmentControl setTitle:@"Love It" forSegmentAtIndex:0];
[self.segmentControl setTitle:@"Hate It" forSegmentAtIndex:1];
[self.segmentControl setTitle:@"Ehh" forSegmentAtIndex:2];
}