重複の可能性:
アプリに追加すると UIAlertView がクラッシュする
私は Objective-C と Xcode が初めてです。私のアプリでは、最初の画面はView Controllerとその上のボタンです。そのボタンを押したときにタブバーを表示したいので、タブバーを2番目の画面にします。
これが私がやろうとしていることです:
appdelegate.h
@property (strong, nonatomic) FirstViewController *viewController1;
appdelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.viewController1 = [[FirstViewController alloc]
initWithNibName:@"FirstViewController" bundle:nil];
self.window.rootViewController = self.viewController1;
[self.window makeKeyAndVisible];
return YES; }
私FirsViewController.m
のボタンクリックのイベントがあります:
-(IBAction) showMainView:(id) sender{
ViewController *mainViewController = [[ViewController alloc] initWithNibName:@"ViewController"
bundle:nil];
[self.view addSubview:mainViewController.view];
mainViewController = [[ViewController alloc] initWithNibName:@"ViewController"
bundle:nil];
[self.view addSubview:mainViewController.view];
ViewController はタブバー付きの xib です。
IB の 2 番目の xib ファイルでは、「ファイルの所有者」と AppDelegate - appdelegate クラスに UIApplication クラスを選択しました。そして、ファイルの所有者をアプリのデリゲートに参加させました。
アプリを実行して最初のビューでボタンをクリックすると、次のエラーでアプリがクラッシュします。
Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<ViewController 0x744f0f0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key delegate.'
どうすればこの問題を克服できるか教えていただけますか? ボタンをクリックした後、tabbarController をrootViewController
?に再割り当てする必要があります。ありがとう。