Я полагаю, что метод ячейки кнопки -setHighlighted:
контролирует, выглядит ли кнопка нажатой или нет.Вам также может понадобиться вызвать -setNeedsDisplay:
на кнопке после ее изменения, и возможно, что кнопка сама изменит выделенное состояние своей ячейки, поэтому я боюсь, что вам, возможно, придется поиграться, чтобы заставить это работать.
(Я должен признать, что я не совсем уверен в этом).