Como usar delegados de aplicação em desenvolvimento de aplicativos ios
A tarefa primária do objecto delegado de aplicação é para inicializar a aplicação iOS e apresentar a sua janela inicial. Este delegado também é notificado (pelo objeto UIApplication) quando ocorrem eventos de nível de aplicação específicos, como quando o aplicativo precisa ser interrompida (por causa de uma mensagem recebida) ou mudou-se para o fundo (porque o usuário tocou o botão Home).
eventos de interface do usuário são tratadas de forma diferente, no entanto. Em vez de passar por um delegado do aplicativo, o objeto Application leva cada evento recebido UI ea encaminha para o objeto (conhecido como Responder) Que contém o ponto de vista em que ocorreu a acção. Para isso, o objecto de aplicação monitora o status atual da sua janela (como se está em primeiro plano ou plano de fundo).
Uma janela no iOS é uma instância de uma classe chamada UIWindow. Como as aplicações iOS está limitado a uma única janela, um objecto UIWindow tem um papel limitado no IOS. Esta janela ocupa a tela inteira e não interage com o usuário, para que ele não tem um título, controles ou outros adornos - como barras de rolagem.
Um UIWindow contém uma hierarquia de vista objectos (instâncias de UIView ou suas subclasses). Na hora do lançamento, um aplicativo cria sua janela e adiciona seus pontos de vista, quer através da execução código escrito pelo desenvolvedor do aplicativo ou através da interpretação de seu storyboard.
Apesar de um objeto Window não interage com os usuários, que desempenha um papel importante na elaboração seus pontos de vista e distribuição de eventos para esses pontos de vista.
Pense na janela como sendo a raiz de uma hierarquia de pontos de vista, com vista para o mais alto na hierarquia colocando outros pontos de vista. Quando uma janela se torna ativa (porque um aplicativo vem para o primeiro plano), o objeto janela exibe o conteúdo do aplicativo, indo para baixo na hierarquia vista, pedindo a cada vista em vez de desenhar a si mesmo dentro da visão na qual ele está contido.
Uma janela distribui eventos de entrada para os pontos de vista mais adequados em sua hierarquia usando mensagens de ação. Por exemplo, para eventos de toque e gesto, o destinatário da mensagem de ação (e seu evento contido) é a visão tocado por um dedo do utilizador. Para eventos como eventos de teclado que não têm nenhum alvo, o destinatário é qualquer ponto de vista é o socorrista.
A primeira resposta é o objeto que deve ser feita primeiro a responder ao evento. Por exemplo, quando você clica em uma caixa de texto, o foco é definido em que a visão, e torna-se a primeira resposta e começa a responder a eventos de teclado. A única UIWindow é responsável pela atribuição e manter o controle do socorrista.
Video: Delphi Seattle - Crie Aplicativos Nativos para Android e iOS com Delphi e Baixe os Códigos Fontes
A figura abaixo mostra a hierarquia de classes para janelas, vistas e respondedores. Para saber mais sobre janelas e vistas, veja Janelas e vistas.
Uma cadeia de respondedores está por trás do primeiro respondedor designado. Se o socorrista não pode lidar com um evento, o evento é encaminhado para a próxima resposta na cadeia. A mensagem viaja até a cadeia, para objectos de nível superior, até atingir o objecto UIWindow. Se não for tratada lá, o aplicativo descarta.
Na maioria dos casos, a cadeia de resposta consiste em vistas. No entanto, quando um controlador de vista designado está a gerir uma vista, o controlador de vista torna-se o seguinte respondedor na cadeia.