在我的应用程序中,我有 3 个 nib 文件。在第一个 nib 文件中,我有一个 uiwebview,它将用户重定向到 vimeo 页面以对我的应用程序进行用户身份验证,在用户按下该链接中的允许后,控件将转移到我的应用程序,然后显示我设计的视频列表一个新的 nib 文件和第三个 nib 文件来播放用户选择的视频。但是在用户批准后我无法加载第二个 nib 文件。我尝试了这些方法在用户按下允许后我获得了访问权限。我删除了 uiwebview 然后我尝试使用 UInib 加载第二个 nib,NSbundle 但出现了 nib dint,我还尝试为新的 nib 创建一个单独的类并将该 nib 的文件所有者分配给新创建的类,但是这种方法也努力工作。然后我尝试使用 appdelegate 加载代码。我这样写代码:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
NSLog(@"in the app delegate show UI");
CustomInterface *ci = [CustomInterface new];
[[NSBundle mainBundle]loadNibNamed:@"Interface" owner:ci options:nil];
UILabel *lab = [ci valueForKey:@"label"];
[self.window.rootViewController.view addSubview:lab];
lab.frame = CGRectIntegral(lab.frame);
UITableView *tab = [ci valueForKey:@"table"];
[self.window.rootViewController.view addSubview:tab];
tab.frame = CGRectIntegral(tab.frame);
return YES; }
但是通过使用这个,初始笔尖和第二个笔尖都在应用程序启动时加载,但我想在用户身份验证后加载第二个笔尖。我尝试了许多其他技术,例如为第二个 nib 创建一个新的委托和类,在默认 AppDelegate 中创建一个新方法 showSecondNib(),但它们都不起作用。你能帮我解决这个问题吗?谢谢你。