Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/105.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 定制UINavBar高度(不同视图需要不同高度的导航条)_Ios_Swift_Uinavigationbar - Fatal编程技术网

Ios 定制UINavBar高度(不同视图需要不同高度的导航条)

Ios 定制UINavBar高度(不同视图需要不同高度的导航条),ios,swift,uinavigationbar,Ios,Swift,Uinavigationbar,我需要实现两个不同高度的UINavigationBar。 我有两种导航栏1。正常高度2。定制高度(增加导航条高度)。我正在使用Swift 2.3,我的应用程序支持ios8.0> 我的解决方法:我用自定义高度将UINavigationBar子类化,并将该类分配给导航控制器中的导航栏。现在我看到我的所有视图高度都更改为自定义高度。但对于少数视图,我希望导航栏的正常高度(44)保持不变。 我尝试将导航栏框架设置回44(在需要正常高度的视图中)。在这里,每当我的应用程序进入后台状态,而活动导航栏又回到自

我需要实现两个不同高度的UINavigationBar。 我有两种导航栏1。正常高度2。定制高度(增加导航条高度)。我正在使用Swift 2.3,我的应用程序支持ios8.0>

我的解决方法:我用自定义高度将UINavigationBar子类化,并将该类分配给导航控制器中的导航栏。现在我看到我的所有视图高度都更改为自定义高度。但对于少数视图,我希望导航栏的正常高度(44)保持不变。 我尝试将导航栏框架设置回44(在需要正常高度的视图中)。在这里,每当我的应用程序进入后台状态,而活动导航栏又回到自定义高度时,我都会遇到一个问题。 我想要一个使用一个UINavigationController处理不同高度的UINavigationBar的解决方案

附加屏幕截图:

视图1:

视图2:

视图2:(应用程序激活后)

从上面的屏幕截图可以看出,当应用程序启动时,I Base view是landing view,这里的导航栏是定制的。 1.视图1从BaseView推送到这里NavigationBar是自定义栏(我希望此视图中有自定义栏,此视图中没有问题) 2.视图2是从BaseView推送到这里的NavigationBar是自定义栏,但我仍然希望该视图中栏的默认高度(44),因此在视图中将显示我正在将NavigationBar框架设置为44。而且它正在被正确地设置 但每当应用程序从后台激活时,它就会重置回自定义高度(您可以在最后一个屏幕截图中看到)


我想要一个解决方案,在这个解决方案中,我可以使用具有增加高度和默认高度的自定义栏,并根据视图适当地使用它们。

首先,在选择该视图后设置自定义导航栏,然后像这样设置其自动调整大小

并在viewWillAppeare方法中隐藏导航栏

override func viewWillAppear(animated: Bool)
 {
        self.navigationController?.navigationBarHidden = true
 }

请上传一些与此问题不符的屏幕,以便我们更好地理解…@MohitDodiya感谢您的即时回复,我附上了一些截图,您可以检查一下吗。您运行此应用程序的是哪个部门?@MohitDodiya我从模拟器中获取了这些截图,但我在物理设备(iPhone 6S)上运行此应用程序时看到了相同的行为@Gupta Hi,您不应该创建
navbar
的子类。看见这是苹果公司定制导航栏的常用方法。请详细说明如何将自动调整大小设置为UINavigationBar。我不能按照你的建议去做。对不起,古普塔,因为我没有及时回复。。首先,在xcode中进入“显示尺寸检查器”左抽屉后,选择自定义视图。设置自动调整大小,就像我上传第一张图片一样。