Você tem uma ideia para um aplicativo, mas não tem o conhecimento de programação para começar a construí-lo? Nesta série semanal de blogs, How To Unleash Your Inner App Developer, vou levar você, o não programador, passo a passo pelo processo de criação de aplicativos para iPhone, iPod Touch e iPad. Junte-se a mim a cada semana nesta aventura, e você experimentará como pode ser divertido transformar suas ideias em realidade! Esta é a parte 8 da série. Se você está apenas começando agora, confira o início da série aqui (este post foi atualizado para Swift 1.2, iOS 8 e Xcode 6.3.)
No meu postagem anterior , eu mencionei Swift, a linguagem dos aplicativos iOS, é um Orientado a Objeto linguagem de programação . Isso significa que quando você escreve código, você está interagindo principalmente com objetos – tanto visuais quanto não visuais. Trabalhar com uma linguagem orientada a objetos é uma grande vantagem para não programadores que desejam aprender programação. Neste post vou falar sobre essas vantagens, e ainda vamos fazer você escrever suas primeiras linhas de código!
Uma viagem de descoberta
Uma das maiores vantagens da programação orientada a objetos é descoberta— uma medida de quão fácil é descobrir ou encontrar o código que você precisa para executar uma tarefa específica.
Conforme mencionado no meu post anterior, a Apple fornece dezenas de frameworks Cocoa Touch que fornecem uma ampla variedade de serviços, que você pode acessar de dentro do seu aplicativo. Dentro dessas estruturas existem milhares de classes que fornecem os serviços específicos que você precisa. Não é razoável estudar todas essas classes antes de escrever sua primeira linha de código. Em vez disso, você deve aprender sobre as classes, pois precisa delas em seu aplicativo.
Então, quando você precisar realizar uma determinada tarefa, você deve descobrir qual classe Cocoa Touch irá ajudá-lo a realizar o trabalho. Por exemplo, digamos que você tenha um aplicativo com um campo de texto para o nome do usuário e outro campo de texto para o sobrenome do usuário, conforme mostrado em figura 1 . Quando o usuário toca no Feito botão, como você pode exibir uma mensagem de boas-vindas que combina o nome e sobrenome juntos (por exemplo, 'Bem-vindo, Steve Jobs'?
![]() |
Figura 1 - Campos de texto de nome e sobrenome |
Basta um pouco de pesquisa para descobrir que a linguagem Swift tem um Corda classe (que obtém algumas de suas funcionalidades do Cocoa Touch Framewor's NSString class) que permite executar uma ampla variedade de tarefas em um conjunto de caracteres (conhecido no jargão de programação como corda ). Você descobrirá que pode anexar várias strings usando o sinal de mais. Por exemplo, o código a seguir combina o primeiro nome, um espaço e o sobrenome juntos para criar uma única string:
var fullName = firstName + ' ' + lastName
Uma vez que você aprende sobre o Corda classe, um mundo inteiro de manipulação de strings está aberto para você. A tabela a seguir lista algumas das tarefas que você pode executar usando o Corda classe. A coluna à esquerda lista as tarefas que você pode executar e a coluna à direita lista as Corda métodos que você pode usar para executar cada tarefa.
Verificando se há um vazio corda |
está vazia() |
Dividindo strings |
substringFromIndex: |
Encontrando personagens e substrings |
rangeOfString: |
Identificando e comparando strings |
hasPrefix: |
Caso de mudança |
MinúsculasString: |
Você não precisa saber como todos esses métodos funcionam agora. Eu só queria dar uma ideia do tipo de serviços disponíveis no Corda classe.
A orientação a objetos é 'o presente que continua dando'. À medida que você descobre novas classes, cada uma abre um mundo de funcionalidades para você.
Entendendo a herança
Um dos pilares da programação orientada a objetos é herança . Este termo refere-se ao conceito de que uma classe pode ser baseada ou herdar atributos (propriedades) e comportamento (métodos) de outra classe.
Por exemplo, no diagrama de classes mostrado em Figura 2 , a seta que aponta do UITextField classe até o UIControl classe indica o UITextField classe herda da UIControl classe.
![]() |
Figura 2 - UITextField herda de UIControl . |
Por causa dessa relação, o UITextField classe herda o UIControl classe ativado , em destaque , e selecionado propriedades, bem como todos os seus métodos. Nesta relação, UIControl é o superclasse do UITextField , e UITextField é o subclasse do UIControl .
A herança de classe pode ir muito além de apenas um nível. Por exemplo, Figura 3 mostra o UITextField 's herança traçada até o nível superior. UITextField herda de UIControl , que herda de Visualização da interface do usuário , e assim por diante, até NSObject , que fica no topo da cadeia de herança. À medida que você percorre a cadeia de herança para o outro lado, de cima para baixo, cada classe adiciona novas propriedades e métodos, que são herdados pela classe abaixo dela.
![]() |
Figura 3 - UITextField cadeia de herança completa de |
Em Swift, uma classe pode ter apenas uma superclasse, mas pode ter zero, uma ou mais subclasses. Por exemplo, UIControl tem várias subclasses, três das quais são mostradas em Figura 4 . Isso faz sentido porque UITextField , UIButton , e UIslider são todos os controles da interface do usuário. A herança de Swift permite que a Apple crie o UIControl class e coloque nela atributos e comportamentos comuns a todos os controles da interface do usuário. Novas subclasses podem ser criadas que herdam esses atributos e comportamentos de UIControl e, em seguida, novos atributos e comportamentos podem ser adicionados à subclasse que especializa a classe para ser um campo de texto, botão, controle deslizante e assim por diante.
![]() |
Figura 4 - As classes podem ter subclasses de zero a muitos. |
Controladores de herança e visualização
Um dos lugares em que você encontrará herança é com os controladores de exibição do seu projeto. Quando você cria um novo projeto iOS, o Xcode adiciona automaticamente subclasses de controlador de visualização ao seu projeto. Por exemplo, se você criar um aplicativo Master-Detail, o Xcode adiciona MasterViewController e Controlador DetailView classes para o seu projeto, conforme mostrado em Figura 5 .
![]() |
Figura 5 - MasterViewController e Controlador DetailView Aulas |
Como você pode ver em Figura 6 , MasterViewController é uma subclasse de Controlador UITableView , que por sua vez é uma subclasse de UIViewController . o Controlador DetailView classe é uma subclasse direta de UIViewController . Isso lhe diz que o MasterViewController A classe foi especializada para trabalhar com controles de visualização de tabela do iOS e o Controlador DetailView classe não tem.
![]() |
Figura 6 - Hierarquia de classe do controlador de visualização |
À medida que você cria aplicativos para iOS, você gastará muito tempo modificando as classes do controlador de exibição, portanto, é importante entender como as propriedades e os métodos das superclasses do controlador de exibição funcionam. À medida que você trabalha com view controllers e outras classes em situações práticas, o conceito de herança de classe fará ainda mais sentido.
Configurando a cena de feedback
Acho que não há nada como realizar uma tarefa você mesmo para ajudar a entender um novo conceito, então vamos fazer isso agora. Para seguir as etapas descritas nesta seção, você precisa baixar uma nova versão do Revisão do iApps projeto clicando esse link .
- Abra a nova versão do Revisão do iApps projeto em Xcode;
- No Project Navigator no lado esquerdo da janela do Xcode, selecione o PrincipalStoryboard.storyboard Arquivo. Isso exibe o storyboard no centro da janela do Xcode;
- Role até o canto inferior direito do storyboard e você verá as cenas mostradas em Figura 7 .
|
Figura 7 - A atualização Revisão do iApps projeto contém um novo Comentários cena. |
Observe o novo Comentários cena no canto inferior direito de Figura 7 . Essa nova cena permite que o usuário insira seu feedback sobre o Revisão do iApps aplicativo e clique no Enviar comentários botão para postar o feedback online. Acho fundamental ter um local onde os usuários possam fornecer feedback em seu aplicativo. Se você não fornecer um local para que eles dêem feedback aqui, eles postarão todas as reclamações na seção de avaliações do iTunes para seu aplicativo e darão ao seu aplicativo uma classificação baixa enquanto estiverem nele!
- Do jeito que está agora, não há conexão entre o Definições cena e o Comentários cena. Eu deixei o segue de fora intencionalmente para que você possa experimentar como criar um modal seguir. No entanto, antes de fazer isso, gostaria que você observasse que não há barra de navegação na parte superior do Comentários cena. Todas as cenas que você trabalhou até agora não tinham uma barra de navegação até que você criasse uma transição para aquela cena, e então uma era adicionada automaticamente. No entanto, ao criar um modal segue, uma barra de navegação não é adicionada automaticamente para você. A maneira mais fácil de adicionar uma barra de navegação a uma cena modal é incorporá-la em um controlador de navegação.
Para isso, selecione o Comentários cena no storyboard clicando na doca de cena na parte superior da cena. A seguir, vá para o editor menu e selecione Incorporar em > Controlador de navegação. Isso adiciona um controlador de navegação ao storyboard que está conectado ao Comentários cena, e também adiciona uma barra de navegação ao topo da Comentários cena ( Figura 8 ).
![]() |
Figura 8 - Incorporar o Comentários cena em um controlador de navegação. |
- Agora vamos alterar o texto do botão da barra de navegação de Feito para Cancelar . Para fazer isso, clique duas vezes no botão Concluído para colocá-lo no modo de edição e digite o texto Cancelar e pressione Retorna .
- Agora você está pronto para criar o segue. Para fazer isso, acesse o Definições cena, segure o Ao controle tecla para baixo, clique no botão Dar uma resposta botão e arraste para a nova cena Controlador de navegação. Quando a cena do Controlador de navegação estiver destacada em azul, solte o botão do mouse para exibir o pop-up segue. Selecione os modal opção do pop-up como mostrado em Figura 9 . Isso cria uma nova transição entre as duas cenas.
![]() |
Figura 9 - Selecione modal do pop-up segue. |
- Agora vamos configurar o segue. Para fazer isso, primeiro selecione o novo segue na superfície de design, que exibe um destaque azul na Dar uma resposta botão ( Figura 10 ) porque é o controle da interface do usuário que aciona o segue. Em seguida, vá para o Inspetor de Atributos e altere o Transição para Cobertura Vertical como mostrado em Figura 10 . Esta opção faz com que o Comentários vista para subir da parte inferior da tela quando o usuário toca no Enviar comentários botão em tempo de execução;
![]() |
Figura 10 - Altere as segue's Transição atribuir a Cobertura Vertical . |
- OK, vamos tentar. Pressione Xcodes Corre botão e quando o aplicativo aparecer no Simulador, selecione Configurações e comentários e, em seguida, clique no Dar uma resposta botão. Você verá o Comentários visualização pop-up na parte inferior da tela.
- Agora clique no Cancelar botão. Você pode ter esperado o Comentários view deslize para baixo e desapareça na parte inferior da tela, mas observe que nada acontece quando você clica no botão. Não temos esse comportamento padrão porque tivemos que criar manualmente a barra de navegação e Cancelar botão. Para fechar o Comentários view, precisamos escrever algum código, o que faremos daqui a pouco.
- Volte para o Xcode e clique no botão Pare botão para interromper a execução do aplicativo no Simulador.
Sempre que você precisar executar uma ação personalizada associada a uma cena específica (como Comentários view), você precisa escrever algum código. Onde você coloca esse código? Em um controlador de exibição personalizado, você cria especificamente para essa cena. Existem três etapas principais envolvidas neste processo:
- Adicione uma nova classe de controlador de exibição ao projeto.
- Associe a nova classe do controlador de visualização à cena do storyboard.
- Adicione o código personalizado à nova classe do controlador de exibição.
Vamos realizar cada uma dessas etapas nas próximas seções.
Adicionando uma nova classe View-Controller ao projeto
Siga as etapas abaixo para adicionar uma nova classe de controlador de exibição ao Revisão do iApps projeto.
- No Project Navigator, selecione o Principal.Storyboard Arquivo. Isso faz com que o arquivo que você está prestes a criar seja adicionado abaixo do storyboard. A seguir, selecione Arquivo > Novo > Arquivo... no menu Xcode. Isso exibe a caixa de diálogo Novo arquivo mostrada em Figura 11.
![]() |
Figura 11 - Selecione Fonte e Classe de toque de cacau na caixa de diálogo Novo arquivo. |
- No lado esquerdo da caixa de diálogo, sob o iOS seção, selecione Fonte . No painel à direita, selecione aula de toque de cacau e clique em Próximo . Isso exibe a segunda etapa da caixa de diálogo Novo arquivo conforme mostrado em Figura 12.
![]() |
Figura 12 - Criar um FeedbackViewController classe, com base UIViewController . |
- No Subclasse de caixa, digite UIViewController . Isso indica que a nova classe que você está criando é baseada ou herda da classe UIViewController classe. Eu gosto de especificar essa seleção primeiro porque ela preenche o Classe caixa com o texto ViewController .
- A seguir, no Classe campo de texto, adicione o prefixo Comentários na frente do ViewController class para nomear a classe FeedbackViewController . Eu gosto de nomear os controladores de visão com base na cena à qual eles serão associados. Como este controlador de exibição será associado ao Comentários cena, FeedbackViewController é um grande nome.
- Clique no Próximo botão. Isso exibe a caixa de diálogo Salvar arquivo como mostrado em Figura 13.
![]() |
Figura 13 - A caixa de diálogo Salvar arquivo |
- Clique no Crio botão para criar a nova classe do controlador de visualização e salvá-la na pasta raiz do projeto. Após alguns segundos, você verá novos arquivos no Project Navigator como mostrado na Figura 14.
![]() |
Figura 14 - Os novos arquivos do controlador de visualização no Project Navigator |
Observe que um FeedbackViewController.swift arquivo foi adicionado ao projeto. Este é um arquivo de classe que contém propriedades e métodos que podem ser acessados por outras classes.
- Selecione os FeedbackViewController.swift arquivo no Project Navigator. O código dentro é mostrado em Figura 15.
![]() |
Figura 15 - O código contido no FeedbackViewController.swift Arquivo |
Aqui estão alguns pontos importantes a serem observados:
- O texto em verde na parte superior do arquivo e na parte inferior são comentários . No Swift, os comentários são usados para fins de documentação. Os comentários não são código e, portanto, não são executados por um aplicativo iOS.
- Logo abaixo dos comentários, no topo do arquivo, há um importar declaração que discutiremos em um post futuro.
- A definição da interface de classe real começa com o classe diretiva e termina com a chave direita de fechamento ( } ).
- O arquivo declara o nome da classe, neste caso, FeedbackViewController .
- O arquivo declara a herança da classe. Nesse caso, UIViewController é a superclasse de FeedbackViewController .
- Existem dois métodos neste arquivo:
- viewDidLoad
- DidReceiveMemoryWarning
- É comum que um novo arquivo de código tenha métodos como este contidos nele quando você cria uma classe pela primeira vez. Esses métodos são colocados aqui para sua conveniência porque são lugares comuns onde você pode adicionar código personalizado.
- A chave esquerda ( { ) marca o início do código do método. A chaveta direita ( } ) marca o fim do código de um método. Ao adicionar código a um método, você deve sempre verifique se o código que você adiciona está entre essas duas chaves !
Você aprenderá muito mais sobre declarações de métodos em um post futuro. Eu só queria acertar os destaques por enquanto.
Associando o FeedbackViewController à cena de feedback
Agora que você criou o novo FeedbackViewController classe, é hora de associá-lo ao Comentários cena.
- No Project Navigator, selecione o storyboard principal Arquivo.
- Clique no encaixe da cena na parte superior da Comentários cena. Quando a linha azul aparece ao redor da cena ( Figura 16 ), indica que você selecionou o controlador de exibição de tabela da cena.
![]() |
Figura 16 - Visualizando o Classe de um controlador de exibição |
- Vá para o Identity Inspector do Xcode clicando no terceiro botão da esquerda na barra de ferramentas do Inspector, conforme mostrado em Figura 16 . Observe que, por padrão, o Classe do controlador de visualização está definido para UIViewController . Isso significa que em tempo de execução, quando o Comentários cena é carregada, um objeto de controlador de visualização é criado a partir do UIViewController classe para gerenciar Comentários cena. Isso funciona muito bem para um aplicativo protótipo, mas agora que queremos escrever algum código personalizado associado a essa cena, precisamos alterar o Classe para nosso controlador de exibição personalizado.
- No Inspetor de Identidade Classe caixa de combinação, digite FeedbackViewController . Assim que você começar a digitar as primeiras letras, o Xcode deverá preencher automaticamente o nome da classe FeedbackViewController . No entanto, devido a um bug no Xcode, isso nem sempre acontece. Se o nome da turma não for preenchido automaticamente, certifique-se de inserir FeedBackViewController com as letras maiúsculas/minúsculas exatas mostradas aqui.
Adicionando um método de ação à classe FeedbackViewController
Agora que você associou o FeedbackViewController aula com o Comentários cena, você está pronto para escrever algum código personalizado. É aqui que o Xcode vem em socorro. O Xcode pode realmente escrever parte do código para você, como você verá nesta seção!
- Com o Comentários cena ainda selecionada vá para o canto superior direito da janela do Xcode e clique no botão central no conjunto de botões Editor ( Figura 17 ).
![]() |
Figura 17 - Selecione o botão Assistant Editor. |
Fazer isso exibe o FeedbackViewController.swift arquivo de código no Editor Assistente, conforme mostrado em Figura 18 . O trabalho do Editor Assistente é exibir arquivos associados ao arquivo que você está aberto no editor padrão. Porque você associou o FeedbackViewController aula com o Comentários cena na seção anterior deste post, quando você clica no botão Assistant Editor, ele abre automaticamente o FeedbackViewController.swift Arquivo.
Observação : Se o Editor Assistente não estiver abaixo do storyboard, no menu Xcode, selecione Exibir > Editor assistente > Editores assistentes na parte inferior .
![]() |
Figura 18 - A FeedbackViewController.swift arquivo é exibido no Editor Assistente. |
Se o FeedbackViewController.swift arquivo faz não aparecem automaticamente no Editor Assistente, verifique a barra de ferramentas na parte superior do Editor Assistente. Se diz Manual como mostrado em Figura 19 , clique na seção da barra de ferramentas que diz Manual e, em seguida, selecione Automático > FeedbackViewController.m a partir do menu pop-up.
![]() |
Figura 19 - Selecione Automático > FeedbackViewController.swift . |
- Clique no Cancelar botão na barra de navegação na parte superior do Comentários cena para selecioná-la.
- Em seguida, vá para o Inspetor de Conexões clicando no botão na extremidade direita da barra de ferramentas do Inspetor ( Figura 20 ). O Connections Inspector permite conectar controles de interface de usuário com código de método no controlador de visualização associado a uma cena.
- Agora vamos ter o Xcode nos ajudando a criar um método de ação . Um método de ação é um método executado em tempo de execução em resposta à ação de um usuário, como tocar em um botão. No Inspetor de Conexões sob o Ações enviadas seção, clique no círculo vazio à direita da seletor ação (conhecida como conexão bem ) e arraste para baixo no FeedbackViewController.swift arquivo logo acima do viewDidLoad declaração do método até que você veja o Inserir ação pop-up mostrado em Figura 20 . A linha azul que aparece entre o poço de conexão e o arquivo de código reforça o conceito de que você está criando uma conexão entre o Cancelar botão e o FeedbackViewController arquivo de código.
![]() |
Figura 20 - Crie um método de ação. |
- Quando você vê o Inserir ação pop-up, solte o botão do mouse para exibir o pop-up Connection mostrado em Figura 21 . Este pop-up permite especificar o nome do método de ação a ser criado.
![]() |
Figura 21 - O pop-up Conexão |
- No pop-up de conexão Nome caixa, digite cancelar como o nome do método a ser criado ( Figura 21 ) e clique no botão Conectar botão. Isso cria uma nova declaração de método no FeedbackViewController.swift arquivo como mostrado em Figura 22 . Novamente, abordaremos informações mais detalhadas sobre declarações de métodos posteriormente nesta série, mas, por enquanto, você só precisa saber que o Xcode declarou automaticamente um novo método chamado cancelar: no FeedbackViewController arquivo de código. o IBAação palavra-chave indica que este é um método de ação do Interface Builder.
![]() |
Figura 22 - O novo cancelar: declaração de método |
- Observe a conexão bem à esquerda do novo método de cancelamento. O círculo tem um centro cinza escuro, indicando que o método está conectado a um controle de interface do usuário. Para ver a qual controle de interface de uso um método está conectado, você pode simplesmente passar o ponteiro do mouse sobre a conexão e o controle de interface de usuário associado é destacado na superfície de design, conforme mostrado em Figura 23 .
![]() |
Figura 23 - Passe o mouse sobre a conexão de um método de ação para ver o controle da interface do usuário ao qual ele está conectado. |
Você também pode visualizar a conexão com o cancelar: método no Inspetor de Conexão. Como mostrado em Figura 24 , você pode ver que o Cancelar botão (o objeto que está atualmente selecionado na superfície de design) está conectado ao cancelar: método no Controlador de exibição de feedback .
![]() |
Figura 24 - O Inspetor de Conexões mostra o Cancelar ligação do botão ao cancelar método. |
- Você terminou com o Editor Assistente, então você pode ocultá-lo clicando no botão Editor Padrão no lado esquerdo do editor grupo de botões como mostrado em Figura 25.
![]() |
Figura 25 - Selecione o botão Editor Padrão. |
- Em seguida, no Project Navigator, selecione o FeedbackViewController.swift arquivo para exibi-lo no Editor de código.
Vamos escrever algum código!
Como está agora, não há código no método de cancelamento (entre as chaves), então se você fosse executar o aplicativo no Simulador, clicando no botão Cancelar botão ainda não faria nada. Felizmente, tudo o que você precisa fazer é adicionar uma linha de código a esse método para ocultar o Comentários Visão.
- Para fazer isso, clique à direita da chave esquerda na primeira linha do método e pressione o botão Retorna tecla duas vezes. Isso cria uma linha vazia onde você pode começar a digitar o código. Vou guiá-lo passo a passo pela mecânica de inserção desse código e, em seguida, falaremos sobre o que o código faz.
- Digite um colchete esquerdo e digite as letras Eu sei como mostrado em Figura 26 . Assim que você fizer isso, o Xcode exibirá um pop-up de conclusão de código que o ajudará a escrever código. Com base nos caracteres digitados, ele fornece o melhor palpite sobre o que você precisa para concluir uma instrução de código. Acontece que o Xcode adivinhou corretamente - você estava digitando a palavra auto . Nesse contexto, auto refere-se à classe na qual você está digitando o código—neste caso, o FeedbackViewController classe. Como você aprenderá daqui a pouco, nosso objetivo final com este código é chamar um método no FeedbackViewController , dizendo-lhe para demitir-se. UMA método é um bloco de código que executa uma tarefa específica.
![]() |
Figura 26 - O Code Completion do Xcode ajuda você a escrever código. |
- Imprensa Retorna para que o Xcode insira automaticamente o texto completo da palavra para você. Se o pop-up de conclusão de código desaparecer, basta pressionar o botão escapar chave para trazê-lo de volta. Quando você pressiona Retorna , o Xcode adiciona as letras se para completar a palavra auto ( Figura 27 ).
![]() |
Figura 27 - O Code Completion completa a palavra-chave auto . |
- Em seguida, pressione a barra de espaço e digite as letras dis . Ao fazer isso, o pop-up de conclusão de código aparece conforme mostrado em Figura 28 .
![]() |
Figura 28 - O preenchimento de código aparece para os caracteres 'dis' que você digitou. |
O segundo método exibido na lista em Figura 28 , dispenseViewControllerAnimated:completion: , soa exatamente como o método que queremos que o FeedbackViewController executar. Na parte inferior do pop-up Code Completion, há uma breve descrição do método atualmente selecionado e há até mesmo um Mais... link você pode clicar para saber mais sobre o método. Use as teclas de seta para cima e para baixo para selecionar o dispenseViewControllerAnimated:completion: método na lista.
- aperte o Retorna tecla para selecionar o método. Ao fazer isso, o Code Completion adiciona o modelo de código mostrado em Figura 29 .
![]() |
Figura 29 - A dispenseViewControllerAnimated:completion: modelo de método |
Observe as seções de código destacadas em azul— bandeira: Bool e (() -> Vazio)? . Estes são espaços reservados nos quais você precisa inserir o código Swift. Quando você chama um método em um objeto, geralmente passa informações adicionais conhecidas como argumentos para especificar ainda mais o comportamento desejado do método que está sendo chamado. Esses espaços reservados são onde você insere os argumentos adicionais.
Atualmente, o foco é definido para o bandeira: Bool marcador de posição. Ao ver esse tipo de espaço reservado, você pode digitar verdadeiro ou falso . Nesse caso, você está especificando se deseja que o FeedbackViewController descartado com uma animação (para que ela deslize de volta pela parte inferior da tela) ou se você deseja que ela simplesmente desapareça da vista. Queremos incluir a animação deslizante, então digite a palavra verdadeiro para o valor do argumento como mostrado em Figura 30.
![]() |
Figura 30 - Tipo verdadeiro no bandeira: Bool marcador de posição. |
- A seguir, pressione o aba chave para ir para o (() -> Vazio)? marcador de posição. Esse espaço reservado fornece uma oportunidade para você passar o código que deseja que seja executado depois que o controlador de exibição for dispensado. Nesse caso, não precisamos fazer nada depois, então basta digitar a palavra-chave nada como mostrado em Figura 31 , que indica que você não quer fazer nada depois.
![]() |
Figura 31 - Tipo nada no ^(void)conclusão marcador de posição. |
Para revisar, este código chama as referências do FeedbackViewController (auto) dizendo-lhe para executar o dispenseViewControllerAnimated:completion : método. UMA verdadeiro argumento é passado indicando que o controlador de exibição deve ser animado quando é descartado, e um nada é passado como o conclusão argumento, indicando que nenhuma ação adicional é necessária após o controlador de exibição ser dispensado.
Vendo a magia acontecer
Agora você está pronto para ver sua primeira linha de código em ação, conforme descrito nas etapas a seguir.
- Clique no Xcode Corre botão.
- Clique no Configurações e comentários linha, e quando o Definições exibição for exibida, clique no botão Dar uma resposta botão, que exibe o Comentários Visão.
- Clique no Cancelar botão e o Comentários deve deslizar para baixo pela parte inferior da tela.
Parabéns! Você escreveu e executou com sucesso seu primeiro código Swift!
Conclusão
Se tudo isso parece muito para absorver, recomendo reler este post até que os conceitos de herança, mensagens, argumentos e métodos fiquem mais claros para você. Você pode baixar a versão completa (até agora) do Revisão do iApps no esse link .
No meu próximo post, vamos mergulhar ainda mais nesses diferentes conceitos à medida que continuamos a escrever o código que transforma nosso aplicativo protótipo iAppsReview em um aplicativo do mundo real.