Objective C 我们怎样才能改变按钮的背景图像,当它被点击然后恢复正常?
Posted
技术标签:
【中文标题】Objective C 我们怎样才能改变按钮的背景图像,当它被点击然后恢复正常?【英文标题】:Objective C How can we change the background image of a button in just when it is clicked and then go back to normal? 【发布时间】:2018-02-23 11:38:21 【问题描述】:[myButton setImage:[UIImage imageNamed:@"btn_normal"] forState:UIControlStateNormal];
[myButton setImage:[UIImage imageNamed:@"btn_highlighted"] forState:UIControlStateHighlighted];
[myButton setImage:[UIImage imageNamed:@"btn_highlighted"] forState:UIControlStateSelected];
myButton.showsTouchWhenHighlighted = YES;
我已经尝试过这段代码,但它不起作用。
【问题讨论】:
你试过setBackgroundImage:forState:吗? 您必须将按钮类型设为 UIButtonTypeCustom,下面的链接可能对您有用***.com/a/1883996/5184217 【参考方案1】:您应该使用setBackgroundImage:forState
。 setImage:forState
更改与按钮标题处于同一深度级别的图像。此外,backgroundImage
会自动适应按钮的视图边界。 image
不是。
【讨论】:
【参考方案2】:实现该按钮的onTouchDown
动作,并通过[btn setBackgroundImage: forState:]
在该函数中设置按钮背景图像
【讨论】:
以上是关于Objective C 我们怎样才能改变按钮的背景图像,当它被点击然后恢复正常?的主要内容,如果未能解决你的问题,请参考以下文章