我正在为第三方开发者制作一个框架,该框架将创建一个类似插页式广告的视图。 这是我从Applications RootViewController类创建myViewController(在Framework内部)对象的方法。
myViewController *ViewController =[[myViewController alloc]initWithNibName:@"myViewController" bundle:nil];
目前我可以通过
在测试应用中加载我的视图[self.view addSubview:ViewController.view];
相反,我希望第三方开发人员像
一样调用我的方法(showScreen) [ViewController showScreen];
这应该通过进入viewDidLoad或myViewController类的init来创建View。
这是我的rootviewcontroller函数,如
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
myViewController *ViewController =[[myViewController alloc]initWithNibName:@"myViewController" bundle:nil];
[self.view addSubview:ViewController.view]; //Dont Want to use this
// [ViewController showScreen]; //Want to use something like this
}
这会打开附加到myViewController
的xib文件 @implementation myViewController
- (void)viewDidLoad {
[super viewDidLoad];
}
答案 0 :(得分:0)
我相信如果你使用framework
,static library
无论什么......
您可以直接从root viewController
呈现UIViewController
- (void)presentViewController:(UIViewController *)viewControllerToPresent animated: (BOOL)flag completion:(void (^)(void))completion NS_AVAILABLE_IOS(5_0);
f.e
[self presentViewController:yourViewController animated:animated completion:completionHandler];
或者你可以将root viewController传递给你自己的UIViewController
来呈现它
[yourViewController showFromViewController:self];