Tapping elsewhere in the cell works, but tapping on the button does not call the method (didSelectRowAtIndexPath).
That's by design. Most people use UIButtons to do something different than what occurs when the user selects the row. For example, when browsing voicemails in Apple's Phone app, tapping the row enables the Call Back & Delete buttons, while tapping the row's blue AccessoryDetailDisclosureButton displays a new ViewController showing the voicemail's date & phone number.