繁体   English   中英

UISegmentedControl文本以编程方式

[英]UISegmentedControl text programmatically

我使用界面构建器(来自storyboard)创建了一个带有两个段的UISegmentedControl,但我想以编程方式设置两个段的文本。 我想这样做是因为我使用NSLocalizedString来处理我的所有按钮,标签,标题等。我在界面构建器中创建了所有内容,然后以编程方式添加文本。 我已经设法使每个项目以这种方式工作,但我找不到向UISegmentedControl添加文本的方法。

有没有办法做到这一点? 我试图使用以下,但因为已经在界面构建器中创建了分段控件,它不起作用。

[segmentedControl initWithItems:[NSArray arrayWithObjects:NSLocalizedString(@"Title 1", @"Title 1"),NSLocalizedString(@"Title 2", @"Title 2"), nil]];

非常感谢

[segmentedControl setTitle:<YourLocalizedString> forSegmentAtIndex:0];

使用SWIFT 4的人的正确答案是

segmentedControl.setTitle("Your Title", forSegmentAt: 0)

使用setTitle:forSegmentAtIndex:将标题分配给分段控件的段。

希望这会对你有所帮助。

更新 :

使用下面的简单代码以编程方式设置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];
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM