我尝试使用以下命令禁用导航控制器的后退按钮项:
self.navigationItem.backBarButtonItem.enabled = NO;它似乎不适用于backButtonItem,但适用于其他栏按钮项。有没有一种方法可以暂时禁用它而不需要隐藏它?
发布于 2011-08-22 02:26:49
您应该改用以下代码:
self.navigationItem.hidesBackButton = YES;希望这能行得通。
发布于 2012-10-05 12:15:49
在我的例子中,我不希望后退按钮完全隐藏,我只想在我的初始化例程结束时短暂地禁用它。所以这就是我最终要做的:
// in initWithNibName
UIButton *backButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[backButton setTitle:@"Cancel" forState:UIControlStateNormal];
[backButton setTitleColor:[UIColor lightGrayColor] forState:UIControlStateDisabled];
[backButton.titleLabel setFont:[UIFont boldSystemFontOfSize:13.0f]];
[backButton setFrame:CGRectMake(0.0f, 0.0f, 68.0f, 28.0f)];
[backButton setEnabled:NO];
[backButton addTarget:self action:@selector(tappedClose) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *buttonItem = [[UIBarButtonItem alloc] initWithCustomView:backButton];
self.navigationItem.leftBarButtonItem = buttonItem;
[buttonItem release];然后,在初始化例程完成后,我执行以下操作:
UIButton *backNavigationButton = (UIButton *)self.navigationItem.leftBarButtonItem.customView;
[backNavigationButton setEnabled:YES];另外,稍后我计划从使用UIButtonTypeRoundedRect改为使用UIButtonTypeCustom,并提供我自己的“后退按钮风格”按钮图像。希望这能有所帮助!
https://stackoverflow.com/questions/7140152
复制相似问题