【问题标题】:How to set the default-state Image for UIButton?如何为 UIButton 设置默认状态图像?
【发布时间】:2013-07-21 18:11:07
【问题描述】:

我完全糊涂了。 我只想为 UIButtons 列表的默认状态设置一个图像。但在不起作用。 我只是将图像分配给我的 Outlet-Collection 的设置器中的所有按钮,但是如果按钮被突出显示,图像只会出现,但我希望图像总是被设置,除非按钮被选中。到目前为止,这是我的代码:

-(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 的情况下设置默认状态按钮的图像?

【问题讨论】:

  • 奥特莱斯的收藏是出了名的漏洞百出。您是否遍历按钮并验证它们在 IBOutlet 中是否正确?

标签: ios cocoa-touch uibutton


【解决方案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];

【讨论】:

    【解决方案2】:

    你试过只用:

        [button setImage:cardBackImage forState:UIControlStateNormal];
    

    【讨论】:

      猜你喜欢
      • 2020-08-26
      • 2013-02-24
      • 1970-01-01
      • 2010-11-04
      • 1970-01-01
      • 2011-08-01
      • 1970-01-01
      • 2019-03-02
      • 2019-05-10
      相关资源
      最近更新 更多