Ios 添加子视图会覆盖导航控制器中的导航栏
我有一个导航控制器,有时我需要提供一个子视图来输入密码。问题是,当我这样做时,它会覆盖导航栏,使返回层次结构变得不可能。我使用XIB来实现这一点,但它没有给我调整添加到它上的UIView大小的选项Ios 添加子视图会覆盖导航控制器中的导航栏,ios,objective-c,uiview,subview,Ios,Objective C,Uiview,Subview,我有一个导航控制器,有时我需要提供一个子视图来输入密码。问题是,当我这样做时,它会覆盖导航栏,使返回层次结构变得不可能。我使用XIB来实现这一点,但它没有给我调整添加到它上的UIView大小的选项 if ([student isEqualToString:@"No"]) { [self.navigationController.view addSubview:password]; [self.navigationController.view bringSubviewToFron
if ([student isEqualToString:@"No"]) {
[self.navigationController.view addSubview:password];
[self.navigationController.view bringSubviewToFront:password];
}
如果你能提供你所看到的屏幕截图和你试图构建的界面设计的图像,那会很有帮助 上面的代码看起来有点奇怪。使用
addSubview:
将此类型的视图添加到navigationController可能会产生意外后果
我建议:
UIViewController
子类中构建密码输入UI,并使用pushViewController:animated:
将此新的viewController添加到视图层次结构中李>
或
UIAlertView
或使用UIWindow
构建自定义alertView,使用alertView捕获密码条目李>
如果您需要进一步解释/澄清,请告诉我 这里有一些建议(假设我理解你的问题)。如果您提示输入密码,我假设您希望用户a)提供密码或b)取消输入密码(而不是简单地忽略它)。如果是后者,则可以使用“取消”按钮取消密码子视图 建议: