我有一些像這樣的代碼:的setTitle和了setBackgroundImage不工作的UIButton嵌套的UIView
- (void)updateUI {
for (UIButton *cardButton in self.oneDimensionalArrayContainingCardButtons) {
int cardButtonIndex = [self.oneDimensionalArrayContainingCardButtons indexOfObject:cardButton];
Card *card = [self.game cardAtIndex:cardButtonIndex];
[cardButton setTitle:[self titleForCard:card] forState:UIControlStateNormal];
[cardButton setBackgroundImage:[self backgroundImageForCard:card] forState:UIControlStateNormal];
cardButton.enabled = !card.isMatched;
self.scoreLabel.text = [NSString stringWithFormat:@"Score: %d", self.game.score];
}
}
- (NSString *)titleForCard:(Card *)card
{
NSString *ret = card.isChosen ? card.contents : @"";
NSLog(ret);
return ret;
}
- (UIImage *)backgroundImageForCard:(Card *)card {
return [UIImage imageNamed:card.isChosen ? @"cardback" : @"cardfront"];
}
和看起來像這樣的UI:
當我點擊了一個卡下面,我設置點擊卡選擇並更新用戶界面。我可以通過觀看日誌記錄來看到內容正在被註銷爲ret
,這意味着我傳入一個非空NSString到cardButton setTitle
。
問題是,背景圖像不會改變,標題看起來不會被設置。
cardButton.enabled
屬性似乎按預期設置。
任何想法可能會發生什麼?
卡是模型類,擴展NSObject – johncorser