2

我可能在这里忽略了明显的问题,当用户在“主”屏幕上选择一个按钮时,我处在一个viewController中,该视图被压入UINavigationController堆栈。在哪里定制UINavigationController后退按钮?

enter image description here

我所试图做的就是到一个地步,我能为后退按钮(显示的图像是“主要”上)访问UIBarButtonItem,并呼吁setBackButtonBackgroundImage:forState:barMetrics:自定义按钮。

我感到困惑的是,我是否需要从每个推进的UIViewController开始执行此操作,还是我需要在UINavigationController本身上执行一次操作?

我想我可能能够访问使用推送控制器我想要的东西:

UINavigationItem *navItem = [self navigationItem]; 

但想到我收到混合了事情的方式设置。

回答

2

可以自定义后退按钮的是那个消失的控制器,比方说,你有控制器A推入控制器B.在控制器B上看到的后退按钮是A的后退按钮。

如果您想自定义应用中的所有按钮,你可以继承UINavigationController,一定要使用它,而不是一个普通UINavigationController并在pushViewController:animated方法,你可以这样做:

controller.navigationItem.backBarButtonItem = ...; // Your custom back button 
[super pushViewController...]; 

编辑 您不能访问默认的后退按钮,只能创建一个新的替换它。

+0

啊我明白了,我迷路的原因是我一直在寻找方法来改变现有的后退按钮。我设法改变了文字,那是什么让我走错了路,非常感谢。 – fuzzygoat

相关问题