如何设置UIButton的默认状态图像?

时间:2013-07-21 18:11:08

标签: ios cocoa-touch uibutton

我完全糊涂了。 我只想为UIButtons列表的默认状态设置一个Image。但是在行不通。 我只是将图像分配给我的Outlet-Collection的setter中的所有按钮,但是如果Button突出显示,则只显示Image但是我希望除了选择按钮之外总是设置Image。到目前为止,这是我的代码:

-(void)setCardButtons:(NSArray *)cardButtons
{
    UIImage * cardBackImage = [UIImage imageNamed:@"card-back.jpg"];
    for (UIButton * button in cardButtons) {
        [button setImage:cardBackImage forState:UIControlStateNormal|UIControlStateHighlighted];
        [button setImage:nil forState:UIControlStateSelected];
    }
    _cardButtons = cardButtons;
}

我真的不知道我做错了什么?如何在不使用IB的情况下设置默认状态按钮的图像?

2 个答案:

答案 0 :(得分:1)

你是否只尝试过:

    [button setImage:cardBackImage forState:UIControlStateNormal];

答案 1 :(得分:1)

您可以使用几种状态,请确保正确设置它们。将其复制并粘贴到Xcode中,然后通过Tab键填写图像。

阅读the Apple Doc for this时,可能值得提升记忆力。

[button setImage:<# normal image #> forState:UIControlStateNormal];
[button setImage:<# selected image #> forState:UIControlStateSelected];
[button setImage:<# highlighted image #> forState:UIControlStateHighlighted];
[button setImage:<# selected and highlighted image #> UIControlStateSelected | forState:UIControlStateHighlighted];