繁体   English   中英

如何更改iOS按钮上的背景图像?

[英]How to change background image on a button , iOS?

我在视图控制器上创建了一个具有预定义背景图像的按钮。 我为这个按钮创建了一个动作和一个插座。 我希望当用户点击按钮更改此按钮的背景图像时。 我怎样才能做到这一点? 我试着把按钮的动作方法放到这样的东西:

snapshotCheckbox.image = [UIImage imageNamed:@"snapshot.png"];

但我想这个方法适用于UImageViews。 我怎样才能为按钮做同样的事情? 非常感谢您阅读我的帖子:D

您可以在viewDidLoad中为按钮的给定状态设置图像:

[myButton setBackgroundImage:[UIImage imageNamed:@"myBackgroundImage.png"] forState:UIControlStateHighlighted];

一个按钮有两个properties imagebackgroundImage ..

用于setting image使用

button.currentImage = image (or) 
[button setImage:image   ForState:UIControlStateNormal];

用于setting backgroundImage使用

button.currentBackgroundImage = image (or) 
[button setBackgroundImage:image  ForState:UIControlStateNormal];

首先将按钮的tybe设置为

button = [UIButton buttonWithType :UIButtonTypeCustom];

然后用

 [button setImage:[UIImage imageNamed:@"imagename.type"]   ForState:UIControlStateNormal];

这样做的一个解决方案是在UIImageView显示图像,并在UIImageView放置透明的UIButton。 在Interface Builder中,您可以将UIButton更改为“custom”。 这将允许您在处理按下UIButton时触发的操作时轻松更改UIImageView中显示的图像。

希望这可以帮助。

按钮对象上有setBackgroundImage:forState:方法。 有关详细信息,请参阅在代码中UIButton设置图像 (秒回答)。

此外,如果为UIControlStateHighlighted状态设置图像,UIButtons会在按下时自动更改图像(尽管只要用户一直按下按钮)。

SET按钮

如果您在点击时需要图像

[snapshotCheckbox setImage:[UIImage imageNamed:@"snapshot.png"]  forState:UIControlStateHighlighted];

或者如果您想要选择它后的图像

[snapshotCheckbox setImage:[UIImage imageNamed:@"snapshot.png"] forState:UIControlStateSelected];

并且在onclick函数中提到

snapshotCheckbox.Selected=YES;

要在按钮上设置图像,只需在Main.storyboard中按下想要图像的按钮,然后在右侧的实用工具栏中按属性检查器并将背景设置为所需的图像! 确保在左侧的支持文件中包含所需的图片。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM