У меня есть uitabbarcontroller, к которому добавлен один UIViewController.(Я уменьшил до наименьшего возможного случая).Этот viewcontroller вызывает UIView, который рисует UIButton через:
- (void)drawRect:(CGRect)rect
{
CGRect brect = CGRectMake(0, 330, 60, 27);
CGPoint centern=CGPointMake(CGRectGetMidX(brect), CGRectGetMidY(brect) );
UIButton * button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[button setFrame:brect];
[button setCenter:centern];
[button setTitle:@"New" forState:UIControlStateNormal];
[self addSubview:button];
}
Кнопка нарисована без внутреннего текста.Только когда я касаюсь дисплея, он рисуется правильно.
Мое решение было следующее: Дайте контроллеру панели вкладок два UIViewController для управления.Затем форсируйте ничью второго, а затем вернитесь к первому:
tabBarController.selectedViewController = [tabBarController.viewControllers objectAtIndex:1];
tabBarController.selectedViewController = [tabBarController.viewControllers objectAtIndex:0];
Это решение работает, но это глупый взлом.Есть ли лучший способ сделать это?