アプリケーションデリゲートを使用してビューを設定するのではなく、最初のルートビューをロードすることをお勧めします。したがって、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をオーバーライドできるので、通常はプログラムでビューを構築することを好みます。これはInterfaceBuilderafaik内では実行できません。