После некоторых тестов и проб в нескольких местах для настройки, я считаю, что это действительно может быть ошибкой.
Даже с очень простым прямым UISegmentedControl вот что я получаю (используя Xcode 4.3.1, iOS 5.1):
После запуска и выбора среднего элемента в коде:
После того, как пользователь щелкнул мышью и нажал на средний элемент:
Я использовал изображения шириной 3 пикселя для разделителей и изображения шириной 1 пиксель для фона.
Редактировать :
Я думаю, что нашел обходной путь: попробуйте поставить команду в очередь для выбора элемента, а не выполнять его в viewDidLoad, например:
dispatch_async(dispatch_get_main_queue(),^{
self.segmentedControl.selectedSegmentIndex = 1;
});
В моем примере выше, постановка в очередь этой инструкции заставляет ее работать очень хорошо.