【问题标题】:How to make image behind invisible button look like it was pressed down?如何使隐形按钮后面的图像看起来像是被按下了?
【发布时间】:2012-12-18 08:29:16
【问题描述】:

您好,我有几个图像被一个不可见的按钮覆盖。当我按下隐形按钮时,有没有办法让它看起来像被按下的图像?谢谢!

【问题讨论】:

  • 你能发布你的 HTML 吗?根据 HTML 的结构,您可能可以为此使用 CSS,但您当然可以使用 Js 进行基于相关节点的简单图像交换。
  • 如果您有对图像视图的引用。您可以为 imageview 设置突出显示的图像,然后在用户按下事件时调用 setHighlited。
  • 正如@db2burke 所说,这需要CSS。实现这一点的最流畅的方法是使用图像精灵。 Google Css 图像精灵基本上是一张包含不同图像的图像,无论您需要多少状态。
  • @Bergasms 我按照你说的做,但图像看起来没有任何不同。你知道为什么会这样吗?
  • 嗯不确定。假设对 UIImageVIew 的引用正确连接,它应该可以正常工作。您总是可以只更改 UIImageView 中的图像而不是使用突出显示的状态,所以在按钮按下时只需执行 [imgview setImage:[UIImage imageNamed:@"highlightimage"]] 并在发布时 [imgview setImage:[UIImage imageNamed:@"正常图像"]]

标签: iphone ios ipad uibutton ibaction


【解决方案1】:

您可以将图像直接放在按钮上,不需要单独的UIImageView

[button setBackgroundImage:image forState:UIControlStateNormal];
[button setBackgroundImage:image forState:UIControlStateSelected];

还有几个UIControlState 常量。

查看文档:

http://developer.apple.com/library/ios/#DOCUMENTATION/UIKit/Reference/UIButton_Class/UIButton/UIButton.html

http://developer.apple.com/library/ios/#DOCUMENTATION/UIKit/Reference/UIControl_Class/Reference/Reference.html#//apple_ref/c/tdef/UIControlState

【讨论】:

  • 我肯定会这样做,但是情况有点复杂。隐形按钮覆盖了三个独立的图像,其中一个是频繁启动的动画数组,另一个是在两个图像之间切换的图像。不过谢谢
猜你喜欢
  • 2010-09-05
  • 1970-01-01
  • 2012-07-06
  • 2011-06-20
  • 1970-01-01
  • 1970-01-01
  • 2016-04-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多