实例化ViewController在IOS中使用storyboard标识符

Ahd*_*wan 2 objective-c ios

我正在使用iOS应用程序,让用户使用他的Facebook帐户登录.我们用户登录后我想推送填充了用户数据的配置文件ViewController; 抱歉这个漫长的初步.

问题是当我使用instantiateViewControllerWithIdentifier方法启动配置文件视图控制器时.它的出口组件都是零

这是我面临问题的代码

- (void)loginViewFetchedUserInfo:(FBLoginView *)loginView
                        user:(id<FBGraphUser>)user {    
profileViewController = [self.storyboard        instantiateViewControllerWithIdentifier:@"CGProfileViewController"];
profileViewController.fbProfilePictureView.profileID=user.objectID;
profileViewController.nameLabel.text=user.name;
profileViewController.locationLabel.text=user.location.location.city;

//    [self presentViewController:profileViewController animated:YES completion:nil]
Run Code Online (Sandbox Code Playgroud)

}

在此输入图像描述

我的代码有什么问题吗?我该怎么办 ? 提前感谢

Ale*_*own 5

这里的问题是您正在引用尚未创建的插座.我会尝试将User模型添加为视图控制器的属性(或使用某种中间控制器),在上面的函数中设置用户属性,然后viewDidAppear使用User模型适当地设置所有控件的文本.

如果您在该viewDidAppear功能上执行此操作,则可以确定您的所有视图都已实例化.毕竟这也是更好的设计; 为什么你的LoginViewController类需要知道内部的内容profileViewController?以这种方式封装逻辑将导致更少的问题.

希望这可以帮助.