Use UITableViewCell como botão

Eu li algumas perguntas semelhantes sobre isso no Stack Overflow, mas nenhuma delas teve uma resposta satisfatória.

O que estou tentando alcançar é um "botão de login do Facebook" na tela Configurações.

Eu quero conseguir isso usando células estáticas. Mas logo descobri que não era possível conectar uma "Ação" ao UITableViewCell usando o Xcode.

Então, tentei obter o mesmo resultado usando um UITableViewCell personalizado com um UIButton interno, mas resultou em muitos problemas adicionais de estilo para torná-lo exatamente igual a um UITableViewCell real.

Agora eu consegui fazer o UITableViewCell se comportar como um Button usando a seguinte solução:

Eu mudei o identificador do "Login Button" UITableViewCell para "loginButton". E eu adicionei o seguinte código ao Controlador de Exibição de Tabela.

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    if ([[selectedCell reuseIdentifier] isEqualToString:@"loginButton"]) {
        NSLog(@"Clicked");
        // Execute function to run code for Login button
    }
}

Em vez de executar um IBAction (que teria sido o caso se eu pudesse apenas vinculá-lo como um botão no Xcode) agora vou executar uma função.

Isso está funcionando como esperado. Mas a razão pela qual criei essa pergunta é: quero saber se esse é o caminho certo a seguir. Está tudo bem? Isso é ruim? Por que isso é bom ou ruim? Existe uma solução melhor? Obrigado!

questionAnswers(1)

yourAnswerToTheQuestion