UIButton default tap fade animation missing in UITableViewController custom cell

ios, iphone, objective-c, uibutton, uitableview

Solution

Had the same problem. I could get the button to change color on highlight with `setTitleColor:forState:`, but it didn't fade from highlight to normal state like the other system buttons.

Turns out that's because my button was of type `UIButtonTypeCustom`. Switching it to `UIButtonTypeSystem` solved it for me. Please note I'm running this on iOS9.

Here's a snippet (Swift) that assumes `self` is a `UIView` or subclass:

let button = UIButton(type: .System)
button.setTitle("Title", forState: .Normal)
button.sizeToFit() // Sizes the button frame based on the title.
addSubview(button)

Problem

I have a custom cell with a few UIButtons in it. I have created Target Actions like so on the buttons: ``` [cell.customLocationButton addTarget:self action:@selector(customLocationButtonTap:) forControlEvents:UIControlEventTouchUpInside]; ``` The actions work great though I don't see the default iOS fade animation on the UIButtons? Is there something I need to enable to get those too - I thought they were standard when using a UIButton from IB?

Original source

Related problems