Лучше, чтобы вы не использовали делегат приложения для настройки своего вида, просто загрузите свой первый корневой вид. Меняем AppDelegate в applicationDidFinishLaunching: назад в
- (void)applicationDidFinishLaunching:(UIApplication *)application {
// Override point for customization after app launch
[window addSubview:viewController.view];
[window makeKeyAndVisible];
}
И пойти в ваш взгляд, что он вызывает и пробивать в этом коде, который будет создать UIButton для вас. Я также добавил изменение цвета фона, чтобы убедиться, что вы загружаете это представление.
- (void)loadView {
self.view = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,480)];
self.view.backgroundColor = [UIColor redColor];
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(0, 20, 100, 20)];
[button setTitle:@"UIButton!" forState:UIControlStateNormal];
[button setReversesTitleShadowWhenHighlighted:YES];
[button setShowsTouchWhenHighlighted:YES];
[self.view addSubview:button];
[button release];
}
Обычно я предпочитаю строить свои программно взгляды, так как я могу переопределить DrawRect: который вы не можете сделать внутри InterfaceBuilder AFAIK.
Низкие рейтинги немного суровы, но я согласен с тем, что это не отличный ответ. Я считаю, что Interface Builder слишком неуклюж для значительной настройки. Это больше проблем, чем того стоит. – Amagrammer