【发布时间】:2013-07-10 15:50:10
【问题描述】:
在原型单元格中,因为没有 IBOutlet 可以给出,所以我在我的 UIbutton 上获得了一个带有标签的句柄。但是在cellForRowAtIndexPath 方法中设置按钮的图像时,它没有显示正确的启用和禁用状态图像。
在 cellForRowIndexPath 中:
if([cellIdentifier isEqualToString:CELL_ID_COMPLIANCE])
_infoButton = (UIButton *)[cell viewWithTag:800];
else
_infoButton = (UIButton *)[cell viewWithTag:900];
if([[comments objectAtIndex:kEntitlementComment] length] > 0){
_infoButton.enabled= YES;
[_infoButton setImage:[UIImage imageNamed:@"icon_info.png"] forState:UIControlStateNormal];
TRACELOG(@"the coments :%@", [comments objectAtIndex:kEntitlementComment]);
}
else{
_infoButton.enabled= NO;
[_infoButton setImage:[UIImage imageNamed:@"info_icon_disabled.png"] forState:UIControlStateDisabled];
}
我在表格中有两种原型单元格,但按钮图像只有两种。我也试过了
[self performSelectorOnMainThread:@selector(doButtonSettings:)
与
Object:textArray waitUntilDone:YES];
在选择器中,我正在设置按钮的图像。如您所知,buttonType 是一个私有设置器,因此不能动态更改。如何使按钮图像符合条件?
【问题讨论】:
-
为什么不直接在xib或者storyboard中设置按钮的图片。你说你有 2 个原型单元。
-
我认为你做的 tableviews 错了..
-
这两个原型单元格有不同的列,将在具有不同权限的不同用户下使用。该按钮仅在有数据时才会启用。无论如何,我已经在下面发布了修复程序。谢谢。
标签: ios uitableview tags uibutton uiimage