tes*_*ing 5 iphone cocoa-touch objective-c modalviewcontroller
在我的子类中,NSObject我想称之为
[[self navController] presentModalViewController:myView animated:YES];
Run Code Online (Sandbox Code Playgroud)
但我的尝试都没有成功.如果我不在子类中,如何调用模态视图UIViewController?
解:
#import "myProjectNameAppDelegate.h"
// ...
MyViewController *myView = [[MyViewController alloc] init];
myProjectNameAppDelegate *appDelegate = (myProjectNameAppDelegate *)[[UIApplication sharedApplication] delegate];
[[appDelegate navController] presentModalViewController:myView animated:YES];
Run Code Online (Sandbox Code Playgroud)
调用presentModalViewController的更好方法是,传递viewcontroller给NSobject类.nsobject从uiviewcontroller
这里调用函数这是带有邮件示例的代码
在视图中控制//您当前的视图
[nsobjectclassObject OpenMailComposer:self];//这会将viewcontroller带到NSobject类
在NSObject类中//可能正在共享类
-(void)OpenMailComposer:(UIViewController*)view
{
viewControllertoShow = view; // viewControllertoShow is UIVIewcontroller object
MFMailComposeViewController *mailView = [[MFMailComposeViewController alloc]init];
mailView.mailComposeDelegate = self;
[mailView setSubject:@"Hey! check this out!"];
[viewControllertoShow presentModalViewController:mailView animated:YES];
}
Run Code Online (Sandbox Code Playgroud)
NSObject class如果您被解雇,可以执行以下操作
[viewControllertoShow dismissViewControllerAnimated:YES]
我没有找到在没有 ViewController 的情况下显示模式视图的方法。您必须在类中存储对 UIViewController 的引用,以便可以访问它。或者在 AppDelegate 中设置一个属性,您可以通过调用 [[UIApplication sharedApplication] delegate]; 来获取该属性。
| 归档时间: |
|
| 查看次数: |
6121 次 |
| 最近记录: |