iOS自定义导航返回栏按钮操作不起作用
我尝试更改导航返回栏按钮 我的代码将推送self-view控制器 所以我需要在按下第二个视图控制器时,导航返回栏按钮(左栏按钮)是显示主页图像栏按钮项 推送后,第三视图控制器将显示默认的backbarbutton和自定义操作 但是当我推过第三个视图时,自定义操作总是不起作用 有人知道为什么或者如何解决这个问题吗 堆栈: 主->推送(主文件列表)->推送(子视图控制器)(显示默认的后退导航栏按钮有箭头,但将自定义操作)->推送…(相同的子操作)…->推送 我的零件代码如下:iOS自定义导航返回栏按钮操作不起作用,ios,objective-c,navigation,Ios,Objective C,Navigation,我尝试更改导航返回栏按钮 我的代码将推送self-view控制器 所以我需要在按下第二个视图控制器时,导航返回栏按钮(左栏按钮)是显示主页图像栏按钮项 推送后,第三视图控制器将显示默认的backbarbutton和自定义操作 但是当我推过第三个视图时,自定义操作总是不起作用 有人知道为什么或者如何解决这个问题吗 堆栈: 主->推送(主文件列表)->推送(子视图控制器)(显示默认的后退导航栏按钮有箭头,但将自定义操作)->推送…(相同的子操作)…->推送 我的零件代码如下: NSIn
NSInteger nmvcCount = 0;
NSArray* navControllersAry = [self.navigationController viewControllers];
for(NSInteger j = 0 ; j <= [navControllersAry count]-1; j++){
if( [[[self.navigationController viewControllers] objectAtIndex:j] isKindOfClass:[FMVC class]]){
nmvcCount = nmvcCount + 1;
}
}
if(nmvcCount == 1 ){
// home bar button is using storyboard draw
self.navigationItem.leftBarButtonItem = self.homeBarBtn;
}else{
self.navigationItem.leftBarButtonItem = nil;
[self.navigationItem.backBarButtonItem setTarget:self];
[self.navigationItem.backBarButtonItem setAction:@selector(popAndOtherProcess:)];
}
}
....
-(void) popAndOtherProcess:(id)btn{
NSLog(@"it work");
}
NSInteger nmvcCount=0;
NSArray*navControllersAry=[self.navigationController视图控制器];
对于(NSInteger j=0;j您可以尝试以下代码:
UIBarButtonItem *backButton = [[UIBarButtonItem alloc]
initWithTitle:@"Flip"
style:UIBarButtonItemStyleBordered
target:self
action:@selector(backView:)];
self.navigationItem.rightBarButtonItem = backButton;
-(IBAction)backView
使用如下方法:
UIBarButtonItem *backButton = [[UIBarButtonItem alloc]
initWithTitle:@"Flip"
style:UIBarButtonItemStyleBordered
target:self
action:@selector(backView:)];
self.navigationItem.rightBarButtonItem = backButton;
-(IBAction)backView
更清楚一点。我们无法获得您想要的。您分配给“后退”按钮的自定义操作是什么。?我需要自定义操作,但它不是输入popAndOtherProcess方法。简而言之,在同一视图控制器中,某些情况下我需要“后退”按钮是使用“左栏”按钮项替换。某些情况下,需要“左栏”按钮使用默认的back bar按钮(有箭头)但自定义back bar按钮操作,项目被取消。现在,popAndOtherProcess始终不会进入。