当点击按钮时,图像第一次没有变化。第一次点击时要改变按钮图像
问题描述:
if([[favbutton imageForState:UIControlStateNormal] isEqual:[UIImage imageNamed:@"wishlwhite.png"]])
{
[favbutton setImage:[UIImage imageNamed:@"wishlistwhite.png"] forState:UIControlStateNormal];
// other statements
}
else
{
[favbutton setImage:[UIImage imageNamed:@"wishlwhite.png"] forState:UIControlStateNormal];
// other statements
}
答
你真的不应该检查按钮中的图像来确定状态。声明一个单独的属性进行测试,例如
@property (nonatomic, assign) BOOL isWishList; // or something
-(IBAction) toggleButton: (id) sender {
if (self.isWishList) {
[favbutton setImage:[UIImage imageNamed:@"wishlistwhite.png"] forState:UIControlStateNormal];
// other statements
} else {
[favbutton setImage:[UIImage imageNamed:@"wishlwhite.png"] forState:UIControlStateNormal];
// other statements
}
self.isWishList = !self.isWishList
}
这样检查条件 - 'if([favbutton.currentImage isEqual:[UIImage imageNamed:@“wishlwhite.png”]])' –