2011-05-25 11 views
1

こんにちは didFinishLaunchingメソッドに問題があります。私は本当に何が問題なのか混乱しているので、私はすべてのコードを貼り付けたのです。DidFinishLaunching iphoneのアプリケーションでの問題

**[Demo1AppDelegate setMapViewController:]: unrecognized selector sent to instance 0x5649a30 
2011-05-25 14:17:58.724 Demo1[10630:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[Demo1AppDelegate setMapViewController:]: unrecognized selector sent to instance 0x5649a30'** 

私はDemo1appDelegate.hファイルで

#import <UIKit/UIKit.h> 
#import "MapViewController.h" 

@interface Demo1AppDelegate : NSObject <UIApplicationDelegate> { 
    UIWindow *window; 
    MapViewController *mapViewController; 
} 

@property (nonatomic, retain) IBOutlet UIWindow *window; 

@end 

そして でこのコード を使用しています:問題は、アプリケーションが、起動しませんでした、それはクラッシュし、それは私のコンソールでこのメッセージを表示しました次のようにDemo1AppDelegate.mファイル

#import "Demo1AppDelegate.h" 
@interface Demo1AppDelegate() 
@property (nonatomic, retain) MapViewController *mapViewController; 
@end 

@implementation Demo1AppDelegate 

@synthesize window; 


#pragma mark - 
#pragma mark Application lifecycle 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {  

    MapViewController *viewController = [[MapViewController alloc] init]; 
    self.mapViewController = viewController; 

    [viewController release]; 

    [window addSubview:self.mapViewController.view]; 
    [window makeKeyAndVisible]; 

    return YES; 
} 


- (void)dealloc { 
    [mapViewController release]; 

    [window release]; 
    [super dealloc]; 
} 


@end 
+0

非常に良い質問です。第一は、私はすでにこれを試すことが – Harish

+0

に動作します.mファイルにdemo1Appdelegates.hファイルと@sysで@interface Demo1AppDelegate()@property(アトミック、保持)MapViewControllerを定義しますが、.ITは、コンソール – Rocky

答えて

4

私は

self.mapViewController = viewController; 

が問題だと思います。 mapViewControllerには@synthesizeがありません。だから、self

それとも別のオプションを介してアクセスすることはできません。この

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {  

    mapViewController = [[MapViewController alloc] init]; 
    [window addSubview:mapViewController.view]; 
    [window makeKeyAndVisible]; 

    return YES; 
} 
+0

このリンクを、それをチェックアウトhttps://github.com/elbryan/MapKitDynRoutes私がしようとしている同じシンクタンクを行うが、それは、私は同じと思うの操作を行いしようとしたが、それい – Rocky

0

は、デリゲートを追加...これが問題になる可能性があります: @interface Demo1AppDelegate : NSObject <UIApplicationDelegate>

+0

で同じマッサージを示して動作していません私はすでに私は同じと思うの操作を行いますが、それは私がしようとしています – Rocky

+0

このリンクを、それをチェックアウトgithub.com/elbryan/MapKitDynRoutesを使用して、ポストコードに見えます同じシンクタンクを行うが、それは、私は同じと思うの操作を行いますが、それはほとんど – Rocky

1
あなたがのUIApplicationを実装する必要が

変更

@interface Demo1AppDelegate : NSObject 

+0

このリンクを、それをチェックアウトgithub.com/elbryan/MapKitDynRoutesを動作しないしようとしています。この – Rocky

1

これはあなたの問題を解決します

@interface Demo1AppDelegate : NSObject < UIApplicationDelegate> 

の問題は、この行に self.mapViewController = viewController;

です

あなたはまた、(mapViewControllerはインスタンス変数である)Demo1AppDelegate.mのdealloc方法で[mapViewController release];を追加する必要がありますDemo1AppDelegate.m

@synthesize mapViewController;にあなたが持っている@synthesize mapViewController;

+0

このリンクを、それをチェックアウトgithub.com/elbryan/MapKitDynRoutes動作しない - あなたは私がこれを試すにdealloc – Rocky

1

を忘れてしまいました。

+0

を動作しないしようとしています – Till

+0

内アクセサを使うべきではありませんが、それはあるがそれは私に同じエラーを与える作業していない – Rocky

+0

このリンクをチェックしてくださいgithub.com/elbryan/MapKitDynRoutes私は努力していますgは同じことをするが、うまくいかない。 – Rocky

1

があなたのマップビューコントローラを合成しようとすることです。

+0

このリンクを、それをチェックアウトgithub.com/elbryan/MapKitDynRoutesに動作しません動作しない – Rocky

+0

なぜですか?ちょうど合成する。私がしようとしています – SK9

0

Demo1AppDelegate.h

+0

このリンクを、それをチェックアウトgithub.com/elbryan/MapKitDynRoutesは同じと思うを行うが、それは申し訳ありません...ちょうど上記の解答を見て...私はこの答えを書かれたが、それを投稿するのを忘れたので、単に」didnの – Rocky

0

で@implementationのDemo1AppDelegate前

@class MapViewController 

を追加してみてくださいねえ!あなたは "自己"

[window addSubview:mapViewController.view]; [window makeKeyAndVisible]; 

だけで飛んで推測することなく、サブビュー

[window addSubview:self.mapViewController.view]; [window makeKeyAndVisible]; 

てみてくださいを追加する場所。

+0

に動作しません上記のQ. –

関連する問題