Я использую следующий код в моей реализации класса контроллера корневого представления:
- (void)viewDidLoad
{
[super viewDidLoad];
NSArray *segmentTextContent = [NSArray arrayWithObjects:
NSLocalizedString(@"button1", @""),
NSLocalizedString(@"button2", @""),
NSLocalizedString(@"button3", @""), nil];
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] nitWithItems:segmentTextContent];
segmentedControl.selectedSegmentIndex = 0;
segmentedControl.autoresizingMask = UIViewAutoresizingFlexibleWidth;
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
segmentedControl.frame = CGRectMake(0, 0, 400, 30);
self.navigationItem.titleView = segmentedControl;
[segmentedControl release];
}
Сегментированный элемент управления не отцентрирован правильно, он сдвинут на несколько пикселей вправо. Самое смешное, что он не выровнен по правому краю. Как будто есть какой-то левый отступ, мешающий центрированию. Еще одна забавная вещь: если я рисую этот сегментированный элемент управления в конструкторе интерфейсов, он идеально центрируется, так что это только программная проблема.
Я попробовал этот код в совершенно новом пустом приложении и получил те же результаты, поэтому я знаю, что это не что-то другое в моем приложении, что вызывает его.
Извините, я хотел опубликовать снимок экрана, но у меня недостаточно очков репутации; -)
Есть идеи?