0

现在,我已经问过这个问题了,但这次有点不同。自从我上一个问题以来,我收到了几个答案和很好的建议,我也做了一些广泛的研究。我正在使用 xcode,并为 iOS 6 编码。

我的问题具体是如何在按下时将按钮保持在临时“选定”状态?就像我希望它在声音的持续时间内保持按下状态,然后切换回默认图像。

我的按钮主要是通过界面生成器链接起来的,因为它很容易编写,而且代码更少。我在按钮的 IBAction 中编码了声音以在按下时播放,并且我有第二个图像,当按下时它会更改为,但是图像未在我的代码中设置,而是在 Interface Builder 中设置。

我见过几个代码,如果我知道如何正确输入它,它们似乎会产生奇迹。这引出了我问题的第二部分。

有人可以帮我设置吗?

例如:

[btnClear setBackgroundImage:[UIImage imageNamed:@"blue_button.png"] forState:UIControlStateHighlighted];

这似乎会在我脑海中发挥作用。我只是不知道用哪个变量替换“btnClear”,并且 setBackgroundImage 没有显示为命令。

在我的另一个问题上,我收到并以最有意义的评论形式回答,但他们没有详细说明,它是:

“您可以为按钮的 Selected 状态设置图像,并在 touchUpInside 上设置属性 selected = YES。

所以我有我想要的处于选定状态的图像,我的按钮链接到 touchUpInside,但它唯一的“属性”或动作是播放声音,因为我的按钮图像是在 Interface Builder 中设置的,所以我不是真的确定我如何设置 selected = YES 而不编写设置图像的新类。

现在,如果这是我必须做的,那很好,但我需要一些指导设置,我对 Objective-C 非常熟悉,只是我对 iOS SDK 中的这些默认类不熟悉,我仍然掌握事情并且不得不时不时地参考教程。

如果有帮助,这是我的另一个问题的链接:

如何使按钮保持按下状态?

同样,我已经在 Interface Builder 中设置了有关图像的所有内容,我只是不确定如何将所选状态选项适合我已经存在的按钮操作。

谢谢!

4

1 回答 1

1

我认为您可能正在寻找的是按钮属性:

@property (nonatomic, weak) IBOutlet UIButton *button;

(或者使用更具描述性的名称!)将其连接到 Interface Builder 中的按钮。然后,当您想切换到所选图像(您说已经在 IB 中,对吗?)时,只需执行以下操作:

self.button.selected = YES;

并返回默认图像:

self.button.selected = NO;
于 2013-08-29T19:43:52.150 回答