在appdelegate.m文件中找不到viewcontroller

时间:2011-10-27 17:09:52

标签: iphone ios facebook

我正在关注ios教程,将Facebook纳入我的应用程序。一切都很顺利,直到我得到关于添加注销按钮的部分。我一直收到一个错误,说明在类型的对象上找不到属性“ViewController”。我究竟做错了什么?这是我的appdelegate.m文件中的代码。

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

    // Add the requests dialog button
    UIButton *requestDialogButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    requestDialogButton.frame = CGRectMake(40, 150, 200, 40);
    [requestDialogButton setTitle:@"Send Request" forState:UIControlStateNormal];
    [requestDialogButton addTarget:self 
                            action:@selector(requestDialogButtonClicked)
                  forControlEvents:UIControlEventTouchUpInside];
    [self.viewController.view addSubview:requestDialogButton];
    // ...
}

2 个答案:

答案 0 :(得分:7)

您是否在标题中声明了viewController类型的UIViewController并合成了?看起来你正在AppDelegate做工作,我建议反对。您应该在viewcontrollers' viewDidLoad:viewWillAppear:方法中实现此目的。

答案 1 :(得分:0)

我也有同样的问题,我相信我知道如何解决它。我相信你用故事板创建了你的测试项目?当您使用故事板创建项目时,appDelegate不包含viewController ...因为故事板将处理该事件。

重新创建项目并取消选中StoryBoard复选框...还有自动引用计数......

此致 Ezfrag