Текст UISegmentedControl программно

Я создал UISegmentedControl с двумя сегментами с помощью интерфейсного разработчика (от раскадровки), но я хотел бы установить текст этих двух сегментов программно. Я хочу сделать это, потому что я использую NSLocalizedString для всех моих кнопок, маркировок, заголовки и т.д. Я создаю весь материал в интерфейсном разработчике, и затем я добавляю текст программно. Я имею, умеют сделать каждый объект для прокладывания себе путь, но я не могу найти способ добавить текст к моему UISegmentedControl.

Там какой-либо путь состоит в том, чтобы сделать это? Я мама, пытающаяся использовать следующее, но потому что сегментированное управление уже создается в интерфейсном разработчике, оно не работает.

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

Большое спасибо

62
задан 22 March 2012 в 10:25

4 ответа

[segmentedControl setTitle:<YourLocalizedString> forSegmentAtIndex:0];
188
ответ дан 31 October 2019 в 13:09

Используйте setTitle:forSegmentAtIndex: для присвоения заголовка сегментам сегментированного управления.

Hope это помогло бы Вам.

9
ответ дан 31 October 2019 в 13:09

Корректный ответ для людей, использующих SWIFT 4, был бы

segmentedControl.setTitle("Your Title", forSegmentAt: 0)
9
ответ дан 31 October 2019 в 13:09

Обновленный:

Использование ниже простого кода для установки заголовка UISegmentControl программно;

файл ч:

@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];
}
0
ответ дан 31 October 2019 в 13:09

Другие вопросы по тегам:

Похожие вопросы: