我的应用程序使用3D Touch的快捷方式。一个这样的快捷方式打开了一个DirectoryViewController。现在在该控制器中,我使用快速检查来确定用户是否已经在一段时间内验证了密码。如果没有,它会这样做:
[self.navigationController.view addSubview:password];
[self.navigationController.view bringSubviewToFront:password];
当我只需单击一个按钮即可转到该视图时,会添加密码子视图(这是一个位于IB中的简单UIView,用于DirectoryViewController)并覆盖TableView上的敏感数据。
但是,当我从快捷方式转到目录时,我仍然会收到Touch ID的提示,但是UIView没有添加。思考?这是AppDelegate代码:
if ([shortcutItem.type isEqualToString:@"com.316apps.Fritch.viewDirectory"]) {
DirectoryViewController *dvController8 = [[DirectoryViewController alloc] init];
[nav pushViewController:dvController8 animated:YES];
}
答案 0 :(得分:0)
在我看来,您应该从UIViewController
获得准确的DirectoryViewController
(在这种情况下为self.navigationController
),并使用addSubView
来调用UIViewController
。不要将self.navigationController
用于addSubView
。