我正试图在按下按钮的那一刻更改图像按钮。发布后,我想回到原来的状态。
我在这里阅读了一些帖子,但它不起作用。
是否可以在不编程的情况下在 GUI 中实现?
我试过这个:
-(IBAction) toggleUIButtonImage:(id)sender{
if ([sender isSelected]) {
[sender setImage:unselectedImage forState:UIControlStateNormal];
[sender setSelected:NO];
}else {
[sender setImage:selectedImage forState:UIControlStateSelected];
[sender setSelected:YES];
}
}
但是我应该将函数 toggleUIButtonImage 关联到什么样的发送者事件?
谢谢
最佳答案
您可以在界面生成器中通过为每个按钮状态配置提供不同的设置来实现:
或者您也可以使用“UIButton”setImage:forState 方法在代码中更改按钮的“设置”。
[myButton setImage:highlightedImage forState:UIControlStateHighlighted];
通常,您应该通过如上所述“配置”按钮来完成此操作,而不是通过手动更改按钮的 subview 来响应用户交互。它对您不起作用的原因是 UIButton 固有的隐藏行为。您手动更改按钮的 subview 作为对用户交互的响应,但您的更改将更改回按钮设置中定义的内容(根据按钮的状态)。所以看起来你的代码根本没有做任何事情。
关于iphone - 按下按钮时更改 UIButton 图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12864571/