How do I disable a UIButton?
Solution 1
Please set this...
editButton.userInteractionEnabled = NO;
or You can use
editButton.enabled = NO;
Solution 2
Swift 3 and above
editButton.isEnabled = false
setEnabled
is now part of the setter method for isEnabled
.
Solution 3
setter for property enabled is overridden in class UIButton. try to send a message.
[editbutton setEnabled:NO];
Solution 4
Use the enabled
property of UIControl
which the super class of UIButton
and set it with NO.
myButton.enabled = NO;
You could also try as @Marvin suggested, In that case your button will not respond to any touch event from user,
Solution 5
In addition to the above:
Set
editButton.userInteractionEnabled = NO;
or you can use
editButton.enabled = NO;
You might want to gray out the button so the user knows it was disabled:
editButton.alpha = 0.66
Rahul
Updated on July 09, 2022Comments
-
Rahul almost 2 years
I am working on a project in which I have to show all photos of Photo Library in a plist and show them horizontally on
UIButton
s.My app will also have an edit button: when the user clicks this button, a delete mark (such as usually appears in other iPhone/iPad apps) should show on each button.
But here's the crucial bit: as soon as this delete mark appears, the functionality of the button should be disabled. I've tried accomplishing this with the following:
{ editbutton.enabled=NO; }
...but it neither produces an error nor works. What should I do?