setBackgroundImage:Forstate和setImage之间有什么区别:Forstate:

时间:2011-05-06 09:37:02

标签: iphone objective-c ios

我正在尝试为UIButton设置图像。

我不知道setBackgroundImage:Forstate和setImage之间的区别:Forstate:

有人可以帮帮我吗?

谢谢和最诚挚的问候。

3 个答案:

答案 0 :(得分:22)

  1. setImage:forState:将图片设置为按钮的实际内容。例如,即使您设置了按钮,也看不到按钮标题,因为您已将图像设置为内容。

  2. setBackgroundImage:forState:将图片设置为背景。在这种情况下,您可以设置标题,它会显示在图像的顶部。

答案 1 :(得分:10)

setBackgroundImage:跟随框架,即如果你改变框架,背景图像会随之拉伸或缩小。与setImage相反,它不一样。图像采用自己的大小。在setImage中,图像是按钮的实际内容。

答案 2 :(得分:5)

区别在于框架

我将在示例的帮助下向您解释假设您的图像大小为40 * 40且按钮帧为20 * 20然后如果您使用setBackgroundImage:forState:方法图像将以20 * 20帧显示如果你使用setImage:forState:方法,你会看到一个图像大小为40 * 40帧的按钮。 这就是区别。

快乐编码!!