2009-11-12 73 views
9

我的应用程序中有几个UIButton,它们的On/Off状态有不同的图形。较小的按钮全部正确显示,没有任何闪烁,但较大的按钮(320x90像素)在75%的时间内按下时会在按钮上闪烁黑色。这是在iPhone上,而不是在模拟器上。我已经在IB中设置了UIButton的默认,突出显示,选定和禁用状态图像的不同组合,但我仍然无法摆脱这种闪烁。有什么我可以尝试吗?UIButton按下时闪烁

+0

你是否在按下事件期间修改按钮? – Josh 2009-11-12 22:54:12

+0

一旦这个UIButton被按下,它会调用一个函数,在处理发生在后台线程时禁用该按钮。这与其他UIButtons不同,可能会导致此问题,但我无法获得UIButton状态图像的任何组合以防止闪烁。 – Ian 2009-11-12 23:37:29

+0

确保您不禁用,或者就此而言,您的后台线程中的所有按钮或任何其他界面元素都可以访问。这可能会导致问题。保持后台线程只处理不涉及该接口。 – luvieere 2009-11-13 08:25:34

回答

25

如果您在处理程序中执行类似button.selected = !button.selected的操作,那么我也有这个问题。 我修正了它的调用button.highlighted = NO

+0

这对我有用。我有一个按钮,突出显示的和选定的状态使用相同的图像(与正常图像不同),并且从高亮显示改为选择时闪烁。 – 2011-07-01 16:57:38

+0

大卫的权利,在调用'button.selected = NO'(或'button.selected =!button.selected')之前调用'button.highlighted = NO',也为我解决了这个问题。 – 2012-05-24 03:41:43

+0

相同...完美:) – VTS12 2012-11-05 21:41:36