I have a few buttons in my app whose alpha is currently set to zero. These buttons are completely non-responsive, but as soon as I increase their alpha, they begin to respond. Is this expected behavior?
As per Apple's documentation for UIView
's hitTest:withEvent:
method:
This method ignores view objects that are hidden, that have disabled user interactions, or have an alpha level less than 0.01.
So any UIView
that has alpha lower than 0.01 will be ignored by the touch events processing system, i.e. will not receive touch.
I'm a little late to the game but you could always set the UIButton background color to clearcolor. This would keep them active. In my case, I am pulsating a button to give it a glowing effect but to do this, I must set it's background to clear, then add a UIIMageView as a subview and add the effect to the image, NOT the button.
Hope this helps anyone else with this problem.
When the alpha is 0 they are responsive, as alpha = 0 is like hidden = YES and you can't click a hidden button.
来源:https://stackoverflow.com/questions/13499817/does-uibutton-become-disabled-when-its-alpha-is-set-to-0-0