设置UIButton已启用并为每个状态设置图像不起作用

时间:2014-04-08 02:58:09

标签: ios objective-c uibutton

我有一个包含按钮的viewController。我在另一个viewController上显示这个视图控制器而不是模态,但通过

[self.storyboard instantiateViewControllerWithIdentifier:@"MyButtonView"]

结果是一个viewController浮动在另一个viewController上,其中顶部viewController只占用了大约一半的屏幕。

底视图控制器在某些时候告诉顶部viewController禁用并启用其按钮。当这个调用发生时(是的,它正在发生,因为我正在调试它)。该按钮未启用或禁用。

===这是我的viewdidload方法=====

[self.myCirlceButton setImage:[UIImage imageNamed:@"Checkmark_v1_normal.png"] forState:UIControlStateNormal];
[self.myCirlceButton setImage:[UIImage imageNamed:@"Checkmark_v1_selected.png"] forState:UIControlStateHighlighted];
[self.myCirlceButton setImage:[UIImage imageNamed:@"Checkmark_v1_disabled.png"] forState:UIControlStateDisabled];

===这些是顶层viewController上的委托方法,由底层viewcontroller调用===

-(void)enableConfirmArrow
{
   [self.myCirlceButton setEnabled:YES];
}

-(void)disableConfirmArrow
{
   [self.myCirlceButton setEnabled:NO];
}

当我在启用和禁用方法上断点时,self.myCircleButton不是nil。

我不知道为什么UI没有更新?我唯一能想到的是上面的启用和禁用方法有时会在3秒内来回调用10次。

///更新///

作为测试,我更改了以下内容并将其删除。更多证明正在调用禁用。

-(void)disableConfirmArrow
{
   [self.myCirlceButton setEnabled:NO];
   [self.locationCirlceButton removeFromSuperview];
}

0 个答案:

没有答案