Ir para conteúdo
  • Cadastre-se

FirstResponder e NSEvent


Posts Recomendados

Oi pessoal, estou desenvolvendo um aplicativo pra mac e me deparei com um problema que nao consigo resolver. Ficaria muito grato se alguém pudesse me ajudar.

Tenho 4 tableViews na mesma Window, com 4 ArrayControllers (todas conectadas ao IB via IBOutlet )

Eu gostaria de implementar a possibilidade de deletar um registro a partir do teclado, e imaginei que a melhor forma fosse criando uma condicional para detectar o firstResponder.

Eu precisaria de alguma coisa que funcionasse mais ou menos assim

if (tableView1 == firstResponder)

[arrayController1 remove:nil];

agradeço qualquer ajuda

abs

Mario Gil

Link para o comentário
Compartilhar em outros sites

  • Respostas 6
  • Criado
  • Última resposta

Top Postadores Neste Tópico

Resolvido,

Vou postar porque outras pessoas podem precisar dessa solução

// DELETA UM REGISTRO DA RESPECTIVA TABLEVIEW

-(void)keyDown:(NSEvent *)e

{

if (([e keyCode] == 51) || ([e keyCode] == 117))

{

if (tableViewEquipamentos == [[self window] firstResponder])

{

[equipamentoAC remove:nil];

}

if (tableViewCategoria == [[self window] firstResponder])

{

[categoriaAC remove:nil];

}

}

else

{

[super keyDown:e];

}

}

// =========================================================================================

Link para o comentário
Compartilhar em outros sites

Resolvido,

Vou postar porque outras pessoas podem precisar dessa solução

// DELETA UM REGISTRO DA RESPECTIVA TABLEVIEW

-(void)keyDown:(NSEvent *)e

{

if (([e keyCode] == 51) || ([e keyCode] == 117))

{

if (tableViewEquipamentos == [[self window] firstResponder])

{

[equipamentoAC remove:nil];

}

if (tableViewCategoria == [[self window] firstResponder])

{

[categoriaAC remove:nil];

}

}

else

{

[super keyDown:e];

}

}

// =========================================================================================

tinha pensado em algo como

if ([tableView isFirstResponder]) {
}

mas acho que pra mac isso não deve funcionar...

Editado por Gabriel Vincent
Link para o comentário
Compartilhar em outros sites

Correto, isso vai funcionar.

Mas atente pro fato que o metodo -(id)firstReponder do NSResponder não esta declarada no cabeçalho do classe, logo é um metodo privado!

Metodos privados funcionam, apesar de gerarem um warning na compilação, mas raramente são tolerados pela Apple na hora da aprovação do aplicativo. Caso o aplicativo não vá para a App Store, sem problemas.

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois...

Participe do debate

Você pode postar agora e se registrar depois. Se você tem uma conta, entre agora para postar com ela.

Visitante
Responder este tópico…

×   Você colou conteúdo com formatação.   Remover formatação

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Limpar editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.



  • Estatísticas do Fórum

    • Total de Tópicos
      52,9k
    • Total de Posts
      443,5k
×
×
  • Criar Novo...