Como usar uiapplicationmain para desenvolver seu aplicativo ios

o UIApplicationMain

função é importante para o desenvolvimento de aplicativos iOS. Ela cria a objeto de aplicação (A Singleton - a única - UIApplication objeto) e o delegado aplicação (A classe criada para você pelo modelo Xcode). Ele também configura o ciclo de eventos principal, incluindo os aplicativos de loo executarp e inicia o processamento de eventos.

UIApplication fornece controle de toda a aplicação

o UIApplication objeto fornece o controlo de toda a aplicação e a coordenação para uma aplicação iOS. É responsável pelo tratamento do encaminhamento inicial de eventos de entrada do usuário, bem como para o envio de mensagens de ações de objetos de controle para os objetos alvo apropriadas.

O objeto de aplicativo envia mensagens para seu delegado aplicativo para permitir que você responda de forma aplicação única de ocorrências tais como lançamento de aplicativos, avisos de pouca memória, e transições de estado, como mover-se em segundo plano e volta em primeiro plano.

Delegação é um mecanismo usado para evitar complexo subclasses UIKit objectos, tais como o UIApplicationobjeto. Em vez de subclasses e métodos imperiosas de um quadro ou outro objeto, você vá em frente e usar esse objeto não modificada e optar por colocar o seu código personalizado dentro de um objeto delegado vez.

O objeto Application Delegado é responsável por tratar várias mensagens de sistema crítico e deve estar presente em todos os aplicativos iOS. O objeto pode ser uma instância de qualquer classe que quiser, contanto que adota a UIApplicationDelegate protocolo. No modelo, você vai achar que é uma subclasse de UIResponder, o que lhe permite responder e lidar com eventos. (UIApplication também é derivado UIResponder.)

Os métodos da presente UIApplicationDelegate protocolo correspondem a comportamentos que são necessários durante o ciclo de vida da aplicação e são sua maneira de implementar esse comportamento personalizado. Muitas vezes você vai encontrar-se escrever código para lidar com o seguinte:

  • Inicialização do aplicativo delegado do aplicação: didFinishLaunchingWithOptions: método.

  • transições de estado, como mover dentro e fora do fundo eo primeiro plano.

  • avisos de pouca memória.

o UIApplication é um objecto Singleton. Para obter uma referência a ele, você envia o sharedApplication mensagem para o UIApplication classe. Enviando o objeto a mensagem dá-lhe um ponteiro para o objeto de delegação:

AppDelegate * appDelegate = [[UIApplication sharedApplication] delegado] -

UIApplicationMain carrega o storyboard

Se da aplicação Info.plist arquivo especifica um arquivo de storyboard, o UIApplication função carrega-lo. Do aplicativo Info.plist arquivo fornece um mapa para a estrutura de alto nível do aplicativo.

Para ver o arquivo, selecione-o sob os arquivos de suporte de título no navegador do projeto. O arquivo obedientemente aparece na área de Editor.



UMA ponta arquivo é um arquivo de recursos que contém as especificações para um ou mais objetos e é usado para criar graficamente a sua interface de usuário usando Interface Builder em aplicativos quando você optou por não usar um storyboard.

Se você estiver usando um storyboard, o controlador de vista inicial é instanciado para você. A configuração inicial View Controller é uma propriedade View Controller. Ele é definido por você, a maioria dos modelos de Xcode.

Observe a caixa de seleção na controlador de vista atributos na área de Utility. No arquivo storyboard iPad, o controlador de vista inicial é um controlador de vista de Split que foi incluído pelo modelo. A ponta-loader também irá instanciar ambos os controladores de navegação, bem como suas exibição de raiz controladores.

No arquivo storyboard iPhone, o controlador de vista inicial é um controlador de navegação que usa uma exibição controlador tabela como seu controlador de visualização raiz.

UIApplication envia o aplicativo: didFinishLaunchingWithOptions: mensagem a seu delegado

Se o método é implementado na delegado aplicação, o aplicação: didFinishLaunchingWithOptions: mensagem é enviada para o delegado aplicação.

tempo de lançamento é um ponto particularmente importante no ciclo de vida de um aplicativo. Além do usuário lançar um aplicativo tocando seu ícone, um aplicativo pode ser lançado para responder a um tipo específico de evento. Um dicionário Opções passado para o aplicação: didFinishLaunchingWithOptions: método fornece informações sobre a razão para o lançamento.

o aplicação: didFinishLaunchingWithOptions: mensagem é enviada para o delegado, quando lançou o aplicativo e seu storyboard foi carregado. Nesta etapa, como você vai ver, você inicializar e configurar o aplicativo. Na época esta mensagem é enviada, a sua aplicação está no estado inativo. Em algum momento após esse método retorna, seu aplicativo se tornará ativa e irá receber o applicationDidBecomeActive: mensagem quando ela entra no primeiro plano.

Idealmente, você recebe seus usuários diretamente no app o mais rápido possível sem essas telas de boas-vindas desatualizados. Na verdade, a maneira em que você fazer isso é fornecer um ou mais imagens de lançamento que você costuma colocar no catálogo de ativos de seu aplicativo.

Uma imagem lançamento é o pano de fundo da primeira tela que o usuário vê. Uma maneira fácil de criá-los é definir um ponto de interrupção em um método viewDidLoad pela primeira vista, o usuário verá. Parar a ação pouco antes de adicionar quaisquer dados para a vista.

Em tempo de execução, a imagem de lançamento para o dispositivo e orientação apropriada será apresentada imediatamente e, se você olhar com muito cuidado, você será capaz de ver aparecer o conteúdo a ser rapidamente colocado no fundo.

A interface de classe (declarado no .h arquivo) lista as mensagens para que um objeto dessa classe podem responder. O código real para a implementação de uma mensagem é chamado de método e será encontrada no associado .m Arquivo. Quando você quiser ter um objeto executar um método, você enviá-lo uma mensagem. A mensagem é o que você quer fazer, enquanto o método é como para fazê-lo.

Não coloque estruturas de dados de grande porte que a sua aplicação não vai usar imediatamente. Se seu aplicativo requer tempo para carregar dados da rede, obter a sua interface de levantar e correr em primeiro lugar e, em seguida, iniciar a tarefa que leva um tempo maior em um segmento de segundo plano.

Nos modelos que não usar um storyboard, o aplicação: didFinishLaunchingWithOptions:método aloca e inicializa a janela ea vista controlador de Split, acrescenta tudo para a janela, e faz com que a janela visível.

Em um aplicativo baseado storyboard, tudo isto é feito pelo storyboard para você, eo aplicação: didFinishLaunchingWithOptions:método não faz nada diferente do retorno.


Publicações relacionadas