Search code examples
objective-ctypesdelegatesnavigator

unknown type name in objective c


I'm pretty new to objective c, and having some basic problems.

I wrote a simple program using a navigator, and everything worked fine. then I added few lines of code (can't even remember what exactly, and it seems to have no connection to the problem) and the problem occurred. I tried ctrl+z, and the problem remained:

I run the program and get these errors:

1. unknown type name "mainController"
2. property with 'retain (or strong)' attribute must be of object type

while mainController is the first screen to be loaded.

This is the appDelegate.h file:

#import <UIKit/UIKit.h>
#import "mainController.h"
#import "WishesList.h"
#import "Wish.h"

@interface AppDelegate : UIResponder <UIApplicationDelegate>

@property (strong, nonatomic) UIWindow *window;
@property (strong, nonatomic) IBOutlet UINavigationController *navController;
@property (strong, nonatomic) IBOutlet mainController *viewController; // this line creates the errors
@property (strong, nonatomic) WishesList *WishesArray;
@property (strong, nonatomic) NSIndexPath *temp;

@end

this is the relevant part of the appDelegate.m file:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:    (NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc]initWithFrame:[[UIScreen mainScreen]bounds]];
    WishesArray = [[WishesList alloc]init];
    temp = nil;
    [self setViewController:[[mainController alloc]init]];
    [self setNavController:[[UINavigationController alloc]initWithRootViewController:self.viewController]];
    [self.window setRootViewController:navController];
    [self.window makeKeyAndVisible];
    return YES;
}

And this is mainController.h:

#import <UIKit/UIKit.h>
#import "addWishController.h"
#import "displayWish.h"
#import "WishesList.h"
#import "Wish.h"

@interface mainController : UIViewController

@property (nonatomic, weak) WishesList *list;
@property (nonatomic, strong) IBOutlet UITableView *wishTable;

- (void)addWish;

@end

it already worked...
can you figure it out?

thanks


Solution

  • This problem happen to me once.

    I was importing the "APPDelegate.h" in my h file and in my APPDelegate.h I was importing the file too (it shouldn't be a problem but...)

    What I did: I changed the Import from my own .h to .m and it worked :)