仅使用后退按钮和透明背景导航

我曾尝试实现嵌入在我的View Controller中的导航控制器。 它按预期工作。

但我的要求略有不同,只需要一个后退按钮,并且在所有屏幕中已经有一个带有徽标图像背景的顶部横幅。 因此,如果我尝试实现后退按钮,则会占用导航栏的空间,其中包含徽标/顶部横幅。

有没有办法克服这种情况。

我不知道有没有其他选择。 但在过去,我和你一样。

我用UIView创建了自定义.XIB。 并将子视图添加为导航栏。

所以,据我所知,最好的选择是,使用UINavigation栏的高度创建自定义.XIB。 并添加为子视图。

以下是您如何实现它的步骤。

1)获取大小为宽度46高度44的 .h文件, .m文件和UIView的Xib

2)根据您的设计设置约束和布局。

3)在.h文件中为“后退”按钮添加sockets。

4)在customview.h文件中创建一个委托。 在.m文件中设置方法。

5)然后在viewcontroller.h文件中导入customview.h文件。 同样不要忘记在viewcontrollers接口中定义委托。 <>

6)现在在Viewdidload方法中添加customheaderview作为子视图。

 #define macro_name (Define in constantfile as macro if you don't want to write whole code again and again) NavigationHeaderview *customView = [NavigationHeaderview CustomNavigation:self.navigationController.navigationBar.frame.origin.xy:self.navigationController.navigationBar.frame.origin.y width:self.navigationController.navigationBar.frame.size.width height:self.navigationController.navigationBar.frame.size.height]; customView.delegate=self; [self.navigationController.view addSubview:customView]; 

7)使用headerview的委托方法在所有视图控制器中访问它。

现在,您可以像在UIView中一样在导航栏中执行任何操作。

注意: –我知道这是一个繁琐的过程。 但是当您需要导航栏中的3或4按钮并在其上设置动作时,它是值得的。 或者需要在导航栏中为整个项目设计相同的布局..