我正在制作标签栏应用程序。我想禁用一个标签栏按钮,我可以通过代码
[[[[[self tabBarController] viewControllers] objectAtIndex:2] tabBarItem] setEnabled:FALSE];
但图像被禁用。我想要启用图像。如何在不通过代码使用自定义图像的情况下实现。我不想使用标签栏按钮的自定义图像。我想使用默认选中和未选中的标签栏按钮图像。请提示。
提前致谢。
答案 0 :(得分:0)
您可以尝试以下操作:将UIBarButtonItem
切换为已禁用,而不是切换属性,将tintColor属性更改为清晰颜色。这将防止按钮在点击时被着色。然后,在委托中,检查按钮是否已禁用,如果是,则返回:
// inside view controller .m
-(void)disableButton
{
[barBtn setTintColor:[UIColor clearColor]];
}
-(void)enableButton
{
[barBtn setTintColor:[UIColor grayColor]]; // whatever color the tint should be
}
-(void)buttonTapped:(id)sender
{
if ([barBtn tintColor] == [UIColor clearColor])
{
return; // button is disabled, so don't to action
}
}