之间有什么区别toViewController,toSharedViewController并且toModalViewController当用于TTURLMap?
TTURLMap* map = navigator.URLMap;
[map from:@"*" toViewController:[TTWebController class]];
[map from:@"tt://tabBar" toSharedViewController:[TabBarController class]];
[map from:@"tt://order?waitress=(initWithWaitress:)"
toModalViewController:[ContentController class]];
Run Code Online (Sandbox Code Playgroud)
使用(void)from:(NSString*)URL toViewController:(id)target将始终从头开始重新创建UIViewController,并且不会尝试重用现有的视图控制器.
因此,例如,如果您调用TTOpenURL(@"tt://details/view/1)两次,它将创建两次视图控制器.
另一方面,如果您使用(void)from:(NSString*)URL toSharedViewController:(id)target,TTNaviagtor将以共享模式创建控制器并重用它们.这对标签栏视图中的菜单很有用.
因此,如果您TTOpenURL(@"tt://menu/1)为使用toSharedViewController创建的URL 调用两次,它将重用现有的视图控制器(如果控制器位于TTNavigator堆栈中并且未被内存警告释放)
最后一个选项,(void)from:(NSString*)URL toModalViewController:(id)target将在不使用现有控件的情况下按下它来显示视图控制器UINavigationBar.如果您需要提供"发送电子邮件"视图或已有UINavigationBar的内容,这将非常有用.