Я использую UISegmentedControl в представлении для выбора конкретного клиента.Затем это устанавливает свойство NSString в моей модели данных из уникального заголовка сегмента, как и когда представление закрыто.Все работает именно так, как я надеялся.Когда я перезагружаю представление в зависимости от того, что хранится в модели, я тогда устанавливаю UISegmentedControl со следующим кодом в viewDidLoad.то есть он считывает строковое свойство из модели, преобразует его в индекс и выбирает правильный сегмент, чтобы отразить, какой клиент хранится в модели.
if ([self.itemToEdit.client isEqualToString:@"John"]) {
myIndex = 3;
} else if ([self.itemToEdit.client isEqualToString:@"David"]) {
myIndex = 2;
} else if ([self.itemToEdit.client isEqualToString:@"Paul"]) {
myIndex = 1;
} else if ([self.itemToEdit.client isEqualToString:@"Stephen"]) {
myIndex = 0;
}
self.reportEditorClient.selectedSegmentIndex = myIndex;
Все работает, как запланировано, просто кажется, чтонеуклюжий.Я проверил документацию, чтобы увидеть, есть ли метод UISegmentedControl, который сделает это, но ничего не может найти.Есть ли лучший подход, или я на правильных линиях здесь?