Transcrições
1. Introdução - Olá!: Olá. Meu nome é medido muito. Tenho 18 anos e faço APS há mais de três anos. Estou super animado para apresentá-los ao maravilhoso mundo do desenvolvimento. Até o final desta classe, você terá feito um aplicativo de jogo de cartas de guerra incrível que você pode instalar em seu próprio telefone e mostrar para seus amigos e familiares. Esta aula destina-se a ser para iniciantes. Então não se sinta intimidado se você nunca escreveu nenhum código. Porque eu garanto que no final desta aula você estará escrevendo seu próprio código
na linguagem de programação rápida. Ao longo do caminho, vamos aprender um monte de coisas realmente legais. Apenas algumas das coisas que vamos aprender Nossa como criar uma interface de usuário personalizada usando imagens personalizadas tinha um layout nosso aplicativo usando layout automático para que ele fique ótimo em todos os dispositivos. Nós também vamos aprender os fundamentos da linguagem de programação rápida que incluem coisas como variáveis,tipos de
dados, tipos de
dados interpolação de strings de instruções, typecasting e geração de números aleatórios. E então vamos aprender como conectar nossa interface de usuário ao nosso código e como responder
à interação do usuário. Então, se você está pronto para começar a criar seu próprio aplicativo que você pode compartilhar com o mundo, vamos começar.
2. O que é um aplicativo: antes de entrarmos e começarmos a fazer o nosso aplicativo. Acho que é uma boa ideia rever o que é um aplicativo. Cada aplicativo é composto por três componentes principais. O 1º 1 é a tela ou a interface do usuário. Isso inclui coisas como botões, interruptores, imagens, barras de
pesquisa e realmente qualquer coisa que o usuário vê como desenvolvedores de aplicativos. A primeira coisa que fazemos é criar a interface de usuário do nosso aplicativo. Então, se você acha que no caso do Snapchat, isso inclui o chat, mas no botão da câmera, o botão Descobrir e todas as células com nossos amigos, bem como uma barra de pesquisa no topo. Esta é a interface do usuário do Snapchat. A segunda parte do nosso aplicativo é o código que você pode pensar no código como instruções que damos ao aplicativo. Então, por exemplo, se temos um botão play em nosso aplicativo, precisamos escrever código para dizer ao ato o que fazer quando o usuário clica no botão play. Então talvez queiramos iniciar um vídeo quando o usuário clica no botão. Um aplicativo seria realmente chato e não funcional se não fosse para o código, seria apenas uma tela estática que não fez absolutamente nada. Então, no caso do Snapchat, quando um usuário clica em um de seus amigos, o código os leva para a próxima página, onde eles podem ver todas as mensagens de texto e conversar com seus amigos. Finalmente, a terceira parte do nosso aplicativo são os dados. Então, no caso do Snapchat, isso inclui todos os seus amigos, sua pontuação instantânea e quaisquer mensagens de texto anteriores que você já teve com alguém. Então, quando você clica em um de seus amigos, não só o código move você para a próxima tela, mas também vai para um banco de dados e recupera todos os dados necessários e envia-o de volta para a interface do usuário para você ver.
3. O que é Xcode: nossa jornada de criação de aplicativos começa com o código X. Excluir é um software gratuito feito pela Apple. E é aqui que vamos criar a interface de usuário para cima e escrever nosso código. O frio que aprenderemos a escrever é em uma linguagem de programação rápida. Se você nunca escreveu uma linha de código, não se preocupe, porque no final desta aula você vai aprender a fazer. Há algumas coisas que você precisa saber antes de instalar o revestimento X. Em primeiro lugar, código
X só pode ser instalado em um Mac. Então, se você tem um computador Windows, há maneiras de contornar isso, como instalar uma máquina virtual. Mas eu não vou cobrir esses nesta classe. Em seguida, você quer se certificar de que você está no Mac OS Catalina ou superior para verificar qual versão do Mac OS está em. Você quer vir até o logotipo da maçã aqui em cima e clique sobre este Mac. Agora, na guia Visão geral, você pode ver a versão do Mac OS que você está usando. Então você quer estar no Mac OS Catalina ou superior? A última coisa que você precisa saber é que o código X é um aplicativo bastante grande Então você
vai precisar de cerca de 10 gigabytes de espaço livre em seu computador para instalá-lo. Para verificar a quantidade de espaço livre que você tem no Mac. Você quer vir até a maçã atrás, como fizemos antes e clique sobre isso, Mac. E agora você quer ir para a guia de armazenamento e bem aqui você vai ver quanta quantidade gigabytes de história disponível que você tem. Então eu tenho 13. Você quer se certificar de que você tem pelo menos 10 para instalar o código X? Tudo bem, Se você está pronto para instalar o código X, basta seguir junto. Então, a primeira coisa que queremos fazer é abrir a Mac App Store para que você possa vir aqui e a pesquisa em destaque, ou você pode clicar em comando na Barra de Espaço no seu teclado, e agora nós vamos procurar a loja de APP, e uma vez que você tem a Mac App Store aberta, você quer vir aqui e procurar por código X, e aqui está, e o seu provavelmente vai dizer instalar aqui. Então basta clicar nisso e isso pode levar entre 20 minutos e uma hora
dependendo da sua conexão com a Internet. Portanto, você quer se certificar de que você tem uma conexão forte com a Internet ao instalar código
X. Se você encontrar algum problema, você quer ter certeza de que você marcou todas as coisas sobre as quais falamos anteriormente.
4. Começando do nosso projeto: Agora que você tem o código X instalado, você pode ir em frente e abri-lo a partir daqui. Você será recebido por esta tela de boas-vindas, e você pode ver que temos três opções para escolher. Mas queremos clicar em criar um novo projeto X Code. Se você não vir esta tela de boas-vindas, você pode ir até o arquivo novo e, em seguida, clicar em Projeto, e isso estará fazendo exatamente a mesma coisa. Agora podemos escolher para qual plataforma queremos desenvolver. Então temos IOS assistir a nós,
TV, TV, nós e MCA esposas. Mas vamos desenvolver para Iowa agora. A partir daqui temos um monte de modelos diferentes que podemos escolher, como um detalhe mestre para cima ou um abbed up. Mas vamos começar com um único aplicativo de visualização, e a grande coisa sobre uma única visualização acima é que você pode realmente chegar a qualquer um desses modelos usando isso. E geralmente quando eu quero criar algo como um ponto de tabulação, por exemplo, eu começaria com uma única visualização acima, pois permite a maior personalização. Agora podemos ir e clicar em seguida. Agora temos que inserir alguns detalhes sobre seu aplicativo, começando com o nome do produto. Então eu vou ir em frente e digitar jogo de cartas de guerra aqui e agora nós temos a equipe. Então anos vai dizer nenhum por padrão. E se acontecer, tudo bem. Você pode simplesmente deixá-lo como nenhum. Quando chegar a hora de enviar o seu para o absoluto, você vai ter que criar uma equipe. Em seguida, temos o nome da organização. Então, se você tem uma organização, você pode digitar isso aqui. Caso contrário, você pode apenas digitar seu primeiro nome e seu sobrenome Aqui temos o pacote identificar ar, e esta é uma identificação que é única para cada aplicação. Portanto, nenhum Tuapse na loja APP pode ter a mesma identificação de pacote. Assim, a ideia do pacote é composta pelo nome do produto, bem como pela organização. Identificar. Então, para obter um pacote único, eu d. Você pode entrar e digitar seu primeiro nome, seu sobrenome aqui,
e isso deve funcionar em seguida. Nós temos a linguagem e você quer ter certeza que este é um C tão rápido e não objetivo aqui em
baixo, nós temos a interface de usuário e você também quer ter certeza que este é um storyboard e não Swifty. Por quê? Na verdade, acho que é tão rápido. Você é por padrão. Então você quer ter certeza de que você alterar isso e aqui em baixo, você quer ter certeza de que você deixar todas essas três caixas de seleção desmarcadas, e então podemos ir em frente e clicar em Avançar. E agora você tem que salvar seu aplicativo para que você possa escolher onde deseja salvá-lo. Vou guardar o meu na minha área de trabalho. E a partir daqui, você pode apenas clicar em criar e é isso. Criamos nosso novo projeto de exclusão. Não se intimide se o código X parecer confuso para você, porque vou rever tudo o que precisa saber sobre o código X na próxima lição.
5. Tour do código Xcode: nesta lição. Vou te levar em uma turnê em torno do código X, e mostrarei todas as partes diferentes associadas ao código X. Então vamos começar com o lado esquerdo aqui. Isso é chamado de área de navegação, e você pode ver que temos diferentes guias aqui, mas a mais importante de longe é o gerente de projeto. Esta primeira vez aqui, parece um pequeno arquivo. Aqui é onde podemos ver todos os arquivos associados à sua aplicação. E eu vou estar falando um pouco sobre cada arquivo aqui. Então vamos começar com um ponto controlador de vista Swift. Este é o arquivo onde vamos escrever todo o código para a nossa aplicação. Então você pode ver que quando eu cliquei neste arquivo, esta seção do meio realmente mudou. Esta seção do meio é chamada de editor, e é aqui que a maioria do nosso trabalho vai acontecer. É aqui que toda a magia acontece. Em seguida, após o controlador de visão que rápido. Nós temos algo chamado o storyboard principal ponto e você pode ver quando eu cliquei nele, a área do editor também mudou. E agora temos um pequeno iPhone 10 aqui é onde podemos realmente projetar e criar a interface de usuário para aplicação. Agora, depois do storyboard de pontos principal, temos a pasta de ativos. É aqui que podemos armazenar todos os ativos relacionados ao nosso aplicativo, como qualquer imagem ou música. E você pode ver que temos o ícone APP aqui, e é aqui que podemos realmente armazenar o ícone para aplicação. Em seguida, temos o storyboard de pontos da tela de lançamento, e isso é muito semelhante ao storyboard de pontos principal. Mas a única diferença é que esta é uma tela que é mostrada quando abrimos nossa
aplicação pela primeira vez . Então, se você pensar em qualquer aplicativo, geralmente eles têm o logotipo da empresa mostrado assim que você abrir o aplicativo. E este é o seu normalmente onde você pode projetar isso. E, finalmente, temos a informação dot p list, e isso só mostra mais informações relacionadas à nossa aplicação. Agora, eu quero falar um pouco sobre essa dor de utilidade aqui à direita. Então, se você tem seu projeto aberto, você pode ir e acompanhar comigo. Vou abrir o storyboard principal aqui para trazer o nosso construtor de interfaces . E eu vou clicar neste pequeno botão de mais no topo, certo? Isso é chamado de Biblioteca de Objetos, e eu vou entrar em muito mais detalhes sobre isso mais tarde. Mas, por enquanto, podemos ir em frente e arrastar um rótulo para a nossa tela. Agora você pode ver a dor dos utilitários aqui muda, e o que esta seção é que ele nos mostra mais detalhes sobre qualquer coisa que nós
selecionamos atualmente . Então você pode ver que temos o rótulo selecionado. Então ele vai nos mostrar um monte de informações sobre nosso rótulo para que você possa ver aqui em cima nós temos o texto do rótulo, então eu vou ir em frente e digitar hello, world e clique enter e você pode ver o rótulo realmente muda para dizer, Olá, mundo. Nós também temos algumas coisas mais tradicionais como a cor, e podemos ir e definir isso para ler, por exemplo, ou rosa. E nós também temos a fonte para que eu possa ir e aumentar o fundo. Reboque o que você quiser, e nós podemos sair e centralizar na tela para que você possa ver que temos um monte de informações relacionadas à nossa etiqueta. Nós também temos muito mais top e todos estes mostram um tipo diferente de informação sobre o rótulo. Mas a guia mais comum é o toque de propriedades aqui, que mostra o tipo mais básico de propriedades sobre o material de rótulo que você veria em algo como o Microsoft Word. Como o alinhamento da fonte, o número de linhas, a cor destaca sombras. E isso se aplica a tudo, não apenas rótulos. Então você pode ver se eu clicar na tela real aqui, ele nos mostra informações sobre a nossa tela. Agora, eu quero que você mude sua atenção para o topo da tela. Isso é chamado de barra de ferramentas Código X, e se você der uma olhada para a esquerda, temos o botão executar e botão parar. Isso nos permite executar nosso aplicativo em um dispositivo. E se você der uma olhada aqui à direita, podemos se eles escolherem para qual dispositivo queremos executar nosso aplicativo. Então você pode ver que eu tenho meu iPhone pessoal conectado para que eu possa executar nosso aplicativo no meu dispositivo
pessoal. Agora, você não será capaz de fazer isso agora, mas vamos entrar em como você pode fazer isso mais tarde, mas a partir de agora, você pode escolher qualquer um desses simuladores para executar o aplicativo. Então eu vou em frente e escolher o iPhone 11. Mas você pode escolher o simulador que quiser. E agora podemos ir em frente e clicar no botão executar e lá está o nosso simulador e há o nosso aplicativo diz Olá Mundo. Então, se você segui-lo junto, você acabou de criar sua primeira aplicação. Parabéns continuando com a barra de ferramentas no topo. Se dermos uma olhada no meio, esta é a barra de status do X Code, e isso nos mostra o status do que está acontecendo agora para que você possa ver o
status atual está terminado rodando jogo de cartas de guerra no iPhone 11 e no lado direito. Agora temos este primeiro botão chamado Biblioteca de Objetos, e eu mencionei isso antes, mas o que é é que ele nos permite escolher entre todos esses diferentes componentes você I que podemos usar em nosso storyboard para que você possa ver que temos coisas como rótulos, botões, controles de
segmento, campos de
texto, controles
deslizantes, visualizações de
progresso e muito mais coisas que podemos usar em nosso controlador de exibição. Agora, eu não vou falar sobre este botão por enquanto, mas aqui à direita, nós podemos realmente esconder e mostrar diferentes partes do código X. Portanto, este botão nos permite ocultar e mostrar o painel de navegação. Este botão nos permite esconder e mostrar a dor dos utilitários. E finalmente, este botão nos permite esconder. Mostrar a área de depuração, que é a última parte do código X que ainda não falamos para a área de depuração é onde vamos ver quaisquer erros associados ao nosso código. Aqui também é onde podemos imprimir coisas para o cônsul dentro do nosso código.
6. Autolayout: antes de entrarmos e começarmos a projetar a interface do usuário para o nosso jogo de cartas de guerra. Quero falar com vocês sobre um conceito muito importante chamado layout automático. Então aqui eu tenho um novo projeto aberto, e eu vou projetar a interface do usuário para uma tela de login para uma aplicação imaginária . Agora, para esta parte, você pode apenas prestar atenção. Você não precisa fazer isso sozinho, então eu vou começar pegando um rótulo,
e eu vou colocá-lo na tela, e eu vou renomear este rótulo para dizer nome de usuário, e eu vou ir em frente e pegar um texto e um campo de texto é um componente você I que permite que os usuários digitem nele. Então, quando você clicar nele, o teclado aparece e eu vou em frente e pegar outra etiqueta. Este pode dizer senha e vamos centralizá-la e outro campo de texto. E este é o campo de texto da senha. E finalmente, podemos ir em frente e pegar um botão, e este vai ser o botão de login. Isto é o que o usuário vai clicar. Uma vez que eles terminaram de digitar o nome de usuário e senha. Tudo bem, então há a tela de login para o aplicativo, e você pode ver no iPhone 10. Não parece tão ruim, mas vamos mudar para um iPad, por exemplo. Você pode ver agora que isso parece muito estranho, então vamos em frente e falar sobre por que isso está acontecendo. A razão pela qual isso está acontecendo é porque quando colocamos um elemento você na tela, estamos realmente definindo uma posição fixa X e Y fora desse elemento. Então, quando colocamos um rótulo na tela, estamos dizendo que queremos que esse rótulo seja, por exemplo, 200 pixels da parte superior da tela e 100 pixels do lado esquerdo da tela. Agora, isso pode parecer bom no dispositivo em que estamos projetando, mas quando mudamos para um tamanho de tela diferente, nossa posição fixa X e Y permanece a mesma, então ele realmente acaba parecendo realmente descolado. Auto layout é um sistema onde, em vez de especificar posições X e Y rígidas de seus elementos, podemos especificar um conjunto de regras que ditam onde os elementos são relativos à tela. ou em relação a outros elementos você. Então, por exemplo, se tivéssemos dois botões que queremos colocar na tela, poderíamos dizer que Botão um está centrado horizontalmente em relação ao grito, bem como, um centrado, verticalmente relativo a a tela. E então poderíamos dizer que o botão para também é centrado horizontalmente em relação à tela. E está 20 pixels abaixo, mas em um, então você pode ver que fazendo isso não especificamos nenhuma posição X e Y rígida para nada . Em vez disso, nós apenas especificamos um conjunto de regras, e através deste conjunto de regras você está? Vou ficar bem em qualquer dispositivo. Agora essas regras que especificamos para você, I elementos são chamados restrições e restrições são uma grande parte do desenvolvimento IOS.
7. Construindo a parte de UI 1: Agora que entendemos a teoria por trás do layout automático, podemos começar a projetar a interface do usuário para o nosso jogo de cartas de guerra. Em primeiro lugar, você precisará Donald os ativos para o nosso jogo. Eu incluí uma pasta Zip ponto sob os projetos e recurso é guia para esta classe. Então, se você está assistindo a essa aula em algum lugar diferente do seu computador, você precisará abrir coisas de habilidade em seu computador para baixar os recursos. Depois de ter sua pasta de ativos baixado, você pode ir em frente e descompactá-lo agora, em seu ex poderia projetar. Você quer clicar em ativos que xsi Assets pasta e bebeu tudo na pasta que você acabou de baixar para os ativos que excedem os ativos. Agora podemos voltar para o storyboard principal. Se você já fez isso, você pode ir em frente e excluir o rótulo hello world. A primeira coisa que queremos fazer é adicionar um fundo ao nosso aplicativo para que possamos vir até
a biblioteca de objetos e enfraquecer a busca por uma visualização de imagem. Uma visão de imagem é au elemento que nos permite imagem repentina dentro dele. Então, se viermos aqui para a direita. Esta é a dor atributos, e temos um atributos chamado imagem. Então, se você clicar neste pequeno botão suspenso, podemos escolher a partir de qualquer uma das imagens em nossa pasta Ativos. A Apple também nos dá um monte de imagens padrão, mas o que queremos é a imagem de fundo para que possamos clicar duas vezes sobre isso. Agora você pode ver que nossa visualização de imagem ainda é muito pequena, então precisamos adicionar algumas restrições para torná-la esticar toda a tela. Então, aqui no fundo, à direita, confinamos os botões de restrição, e há apenas dois botões com os quais trabalharemos neste projeto. O 1º 1 é o alinhamento, mas sobre isso parece dois pequenos retângulos um acima do outro. Este nos permite alinhar horizontalmente nossa imagem no recipiente ou alinhado verticalmente a imagem no recipiente. O 2º 1 é o botão de restrições. Este tem, como um pequeno quadrado no meio, com duas linhas na borda, e isso nos permite adicionar restrições ou regras, como eu mencionei anteriormente dedos todos os quatro lados da nossa imagem. Certo, a primeira coisa que queremos fazer é desmarcar este botão que diz “ Restrito às margens”. Então, se você pensar no Microsoft Word, por exemplo, as margens são uma borda fina em torno do papel. E no caso do Código X, isso é exatamente a mesma coisa. Portanto, as margens são apenas uma borda ao redor da tela, e são úteis para impedir que coisas importantes, como campos de texto ou rótulos toquem diretamente na borda da tela. Mas para o caso do fundo, nós realmente queremos que ele vá todo o caminho de ponta a ponta, então nós não queremos restringi-lo dentro das margens. A próxima coisa que queremos fazer é subir aqui até o topo e clicar nesta seta suspensa , e agora podemos escolher o que queremos restringir o topo desta imagem em relação a para que
possamos restringi-la em relação à vista ou em relação a A área segura. Então, se você pensar sobre a exibição, esta é a tela inteira de borda a borda. Onde tem a área segura é em Lee, as partes da tela que estão completamente desobstruídas. Então, se você pensar sobre o iPhone 10 ou superior. Por exemplo, a área segura não inclui a área logo acima do entalhe. Então esta área aqui não faz parte da área segura. Também não é esta área aqui em baixo onde este controle deslizante do botão inicial existe antes da imagem. Queremos restringi-la em relação à vista e não à área segura. Agora você pode ver esta linha aqui acende em vermelho, e isso significa que temos a restrição superior habilitada. E agora você deseja alterar esse valor de 1 92 para 0. Isso significa que queremos que esta imagem seja zero pixels em relação ao topo da tela, que é uma exibição. Em seguida, queremos fazer a mesma coisa para todos os quatro sites. Então vamos clicar no modo de exibição e depois definir este 20 E é importante que você primeiro selecione a vista e então você altere esse número 20 Você não quer fazer o contrário. E agora, uma vez que temos todos os quatro lados habilitados, podemos clicar em adicionar quatro restrições e você pode ver a nossa imagem agora cobre toda a tela . Quero salientar que se você clicar no botão de restrições. Novamente, você vai notar que nenhuma das restrições está acesa em vermelho, então você pode pensar que nenhuma delas está habilitada, que é estranho, porque acabamos de adicionar todos os polegares. Embora este menu de restrições seja puramente para adicionar novas restrições, mas não nos mostra quais restrições já temos. Então, para ver quais restrições já temos em um elemento U, você pode clicar nele e vir até aqui para este pequeno botão de régua sobre isso é chamado de
Inspector tamanho . E aqui temos ah, guia chamado restrições e você será capaz de ver todas as restrições que temos ativado em Você elemento? Então temos todas as restrições horizontais e as restrições verticais agora dizem que você
estragou uma das restrições. Bem, o que você faz? Digamos que estraguei essa restrição. Eu posso clicar nele e, em seguida, clicar no botão excluir. E agora essa restrição se foi, então eu posso voltar aqui e apenas Riyadh e corrigir qualquer erro que eu tenha cometido anteriormente. E você pode ver que a restrição está de volta. Abre bem aqui. Você deve ter notado que se você estiver usando um dispositivo diferente do iPhone 11 dizer que o iPhone oito plus, por exemplo, o fundo não parece muito certo. Então, a maneira que podemos corrigir isso é chegando aos atributos, dor e descendo para o modo de conteúdo e alternando do ajuste de aspecto para aspecto Phil, e agora parece muito melhor.
8. Construindo a parte de UI 2: nesta lição. Vamos terminar de construir a interface do usuário para o nosso jogo de cartas de guerra. Então vamos começar colocando o logotipo na tela para que possamos vir até a
biblioteca de objetos e procurar a visualização de imagem. Agora, aqui na seção de atributos, podemos mudar a imagem para a imagem do logotipo. E agora temos que adicionar algumas restrições. Então o primeiro 1 é que queremos alinhar horizontalmente a imagem no contêiner, e agora você pode ver que o código X está reclamando. Então, se você clicar nesta pequena seta vermelha aqui, podemos dizer que ele diz precisa de restrições para por que posição? Adicionamos uma restrição para a exposição, mas ainda falta uma para a posição Y. Agora, uma vez que você adicionar um único restrito a um código X do elemento U quer que você complete todas as
restrições para que ele saiba exatamente onde posicionar com precisão este elemento. Então agora ele não sabe como posicioná-lo sobre o acesso por quê. Então precisamos dizer o que fazer. Podemos vir até aqui para o botão de restrições, e vamos em frente e clicar na área segura e vamos definir isso para 60 e agora ele pode adicionar uma restrição. E agora o código ex está feliz porque sabe exatamente onde colocar essa imagem. Agora, a próxima coisa que queremos fazer é adicionar as imagens do cartão para a tela. Então nós vamos subir aqui e vamos procurar uma visão horizontal da pilha. Agora
digamos, temos vários elementos que queremos empilhar um sobre o outro ou ao lado do outro . Poderíamos adicionar restrições todos esses elementos individualmente, ou uma solução muito mais fácil seria usar uma visão de estoque. Então, o que é uma exibição de pilha? Uma exibição de pilha é uma maneira de empilhar vários elementos você juntos. E então podemos tratar toda a visão de estoque de um único elemento. E agora você pode ver que a exibição de pilha é invisível, então na verdade é meio difícil vê-lo se mover. Mas se você der uma olhada para a esquerda aqui, nós podemos realmente ver todos os elementos que compõem a nossa tela. E se você já usou a loja de fotos, você pode pensar nisso como todas as camadas que compõem nossa tela. As camadas na parte superior são a parte de trás, a maioria dos itens, para que você possa ver que a área segura é toda na parte de trás. E então vem o nosso fundo e, em seguida, o nosso logotipo e, em seguida, a nossa vista de pilha o
que está na parte inferior é a frente. A maioria dos elementos na tela. Agora, a próxima coisa que queremos fazer é realmente preencher nossa exibição de estoque horizontal com imagens para que possamos chegar à biblioteca de objetos e procurar por uma imagem. E agora podemos colocá-lo na visão de estoque, ou uma alternativa é vir aqui e podemos colocá-lo bem sob a visão de estoque desta maneira. Então você pode ver isso quando eu coloco bem embaixo dele. Esta linha azul, na verdade em densa sobre isso está nos mostrando que estamos colocando a imagem na exibição de estoque. Se esta linha azul estiver na mesma posição que uma pilha para você, isso significa que estamos realmente colocando-a bem abaixo da pilha. Você e não dentro da pilha para você. Então você quer ter certeza de que esta linha azul está recuada para dentro e agora temos uma única imagem na exibição de pilha e podemos vir até aqui para os atributos de imagem e alterá-lo qualquer um desses cartões. Então não importa qual cartão é por agora, então eu vou em frente e selecionar o cartão 10. E agora queremos subir e queremos obter outra imagem, e queremos recuar novamente dentro da exibição de pilha. E de novo, vamos escolher uma carta aleatória. Agora, se clicarmos na visão de estoque aqui, você pode ver o estoque. Ele tem um monte de atributos que podemos mudar, e um deles é espaçamento. Então este é o espaço entre todos os elementos dentro da pilha para você. E agora as cartas estão próximas umas das outras, e isso não parece muito bom. Então podemos ir em uma justiça, espaçamento, dizer algo como 30 e você pode ver que as cartas parecem muito melhores agora. Agora temos que adicionar restrições à exibição de pilha. Então, se clicarmos nele e descermos aqui, quero alinhá-lo horizontalmente no recipiente e verticalmente no recipiente. e podemos adicionar restrições e há nossas imagens agora. A próxima coisa que queremos fazer é adicionar um botão para a tela para que possamos vir aqui e procurar botão e podemos ir em frente e colocar para baixo aqui. E se chegarmos ao inspetor de atributos, temos um atributo de imagem e podemos ir em frente e definir isso para o botão de negócio. E agora você pode ver que nosso botão é o botão do negócio. Mas também temos este botão tributado ao lado dele. Então, se viermos até aqui, podemos realmente ir em frente e excluir este texto para não dizer nada. Agora temos que realmente adicionar algumas restrições rasgou manteiga. Então vamos começar alinhando horizontalmente no contêiner, e agora temos que adicionar algumas restrições verticais. Então, se chegarmos às novas restrições estranhas, podemos clicar neste menu suspenso e você pode ver que ele já o tem selecionado para a
exibição de pilha , e é isso que queremos. Queremos uma restrição em relação à vista pilha, e 50 pontos parece sobre a direita para que possamos ir em frente e clique em Adicionar uma restrição. Agora tudo o que nos resta fazer é adicionar os rótulos de texto na parte inferior da tela que mostram como Maney aponta tanto o player quanto a CPU têm, que
possamos chegar à biblioteca de objetos e procurar uma exibição de estoque. E desta vez vamos usar uma exibição de pilha vertical, e podemos ir em frente e jogar começou aqui e dentro da exibição de estoque queremos colocar
para rótulos para que possamos vir aqui e recuar na exibição de estoque, e este rótulo é vai dizer Jogador. E agora o segundo rótulo que queremos adicionar isso vai conter o número de pontos, o chapéu do jogador para que possamos chegar ao texto do rótulo e podemos mudar isso para zero. E aí está o nosso estoque. Poucos com o texto do jogador e a pontuação logo abaixo dele. Agora podemos ir em frente e clicar na exibição de estoque, e temos que adicionar algumas restrições. Então, vamos clicar no botão de restrições, e a primeira restrição que queremos fazer é para o lado esquerdo. Portanto, é importante que você clique neste menu suspenso e selecione a área segura e queremos
restringir 20 pixels parece sobre a direita. E agora para o fundo, vamos clicar sobre isso, e também vamos garantir que ele é selecionado para área segura e vamos definir isso para 20 pixels. E agora podemos ir em frente e clicar em adicionar a Restrições. Agora, eu vou clicar no texto do jogador, e eu quero mudar a cor para uma cor branca, e isso é todo o caminho no fundo aqui. Eu também quero mudar o tamanho da fonte para 25 e eu vou fazer a mesma coisa para este rótulo. E agora a última coisa a fazer é clicar no estoque poucos e mudar o alinhamento para centro. E isso permite que este rótulo inferior seja centrado bem no meio. E agora queremos fazer exatamente a mesma coisa, mas para a CPU. Então vamos em frente e procurar por uma vista de pilha, e queremos ir em frente e colocá-lo bem abaixo deste bastão, você e você querem ter certeza de que não está recuado em palavras. Isso significaria que estamos colocando esta pilha, poucos dentro da outra pilha poucos. Em vez disso, queríamos estar no mesmo nível. Então, assim. E agora vamos subir e procurar por um rótulo no lugar que dentro da exibição de pilha. E agora vamos procurar outro rótulo e colocá-lo dentro da pilha para você. E este primeiro rótulo vai dizer CPU no segundo rótulo, eu ia dizer zero Não, nós podemos entrar e pegar a exibição de estoque e podemos clicar no botão de restrições e você pode ver isso por padrão. É uma restrição relativa a este botão aqui, mas queremos mudar isso para a área segura. E do lado direito, já
está definido para uma área segura. Então você quer definir isso como 20 e queremos definir isso como 20 e podemos clicar em adicionar a restrições. E agora queremos clicar neste texto da CPU, e queremos mudar a cor do dedo do pé branco e a fonte para 25. E eu acabei de notar que eu fiz um erro de digitação aqui, então eu vou ir em frente e excluir essa barra invertida e eu vou mudar a cor do dedo do pé branco e a fonte do texto para 25. E finalmente eu vou clicar na vista de estoque e clicar no centro. Outra coisa que eu quero mencionar é que você pode realmente renomear esses seus elementos. Então, se eu clicar nesta exibição de estoque e clicar nele novamente apenas uma vez, eu vou ir em frente e renomeá-lo estoque de jogador, e eu vou clicar no estoque de CPU e clicar sobre ele uma vez, e eu vou continuar e continuar Renomeá-lo para ver se você empilhar, e isso só nos permite ser um pouco mais organizados.
9. Swift parte 1 - Variables: nesta aula, nós vamos aprender os fundamentos da linguagem de programação rápida. Se você já programou antes, então esta lição será super fácil para você. Mas se não o fez, não se preocupe, porque vamos começar do começo absoluto. E esperançosamente, no final desta aula você vai entender o básico da programação rápida. Além disso, eu recomendo que você realmente codifique junto comigo em seu próprio computador e digite o que eu estou realmente digitando. E você não tem que memorizar nenhum dos códigos que escrevemos. A melhor maneira de aprender a programar é continuar praticando e aplicando as coisas que
aprendemos . Mas a memorização não é necessária. Então eu quero que você vá em frente e abra o código X e nós vamos clicar em começar com um playground. Alternativamente, você pode ir para o arquivo. Você pode obter o arquivo novo e playground, e um playground é uma luz. Um playground é um arquivo leve e rápido que nos permite brincar com algum código sem realmente iniciar um
projeto completo . Então é exatamente o que parece. Um parque infantil. Certifique-se de que tem um dedo do pé. Iowa e em branco e, em seguida, você pode ir em frente e clique em próximo. E agora você pode salvá-lo onde quiser. Vou guardá-lo na minha área de trabalho. Esta aqui é a área onde vamos escrever todo o nosso código,
e isto é chamado de dor de pré-visualização aqui. Mas não vamos nos preocupar muito com isso. Em vez disso, vamos subir aqui e clicar neste botão do meio, abrir nosso cônsul e o console é onde vamos enviar código. Então vamos começar por falar sobre esta primeira linha aqui em cima. Importar-te, miúdo, vou explicar brevemente isto, mas se não perceberes, não te preocupes, porque não é importante o que vamos aprender hoje. Então, como programadores, não
precisamos construir tudo do zero. Em vez disso, queremos usar o máximo de código pré-existente que outros escreveram o máximo possível. Então você é uma biblioteca de códigos que a Apple escreveu. E importando u i kid, estamos dizendo que queremos ter acesso ao código que a Apple escreveu em nosso programa . Se isso não faz muito sentido, você está certo. Agora, não se preocupe com isso. Agora, antes de explicar esta linha de código aqui, quero falar com vocês sobre comentários. Então eu vou ir em frente e fazer algum espaço aqui um na minha tipo duas barras para a frente. E este é o meu pequeno comentário. Agora, você pode pensar nisso como uma pequena nota que escrevemos para nós mesmos ou para outras pessoas para explicar o código que estavam escrevendo. Assim, os comentários são cruciais se você estiver trabalhando em uma equipe porque você precisa explicar a outras pessoas o que o código que sua escrita realmente faz. E então este é um comentário de linha única, e qualquer coisa que vem depois dessas duas barras é completamente ignorado pelo código Ex. Agora, se quisermos escrever um comentário que leve várias linhas? Bem, podemos digitar uma barra e então podemos colocar um asterisco. E agora nós só temos que clicar enter, e você pode ver Swift realmente nos dá esta área onde podemos digitar um comentário multi-linha e tudo dentro deste Ford cortar um asterisco nesta barra dianteira um asterisco
não vai realmente ser executado. Então, nada disso será tratado como código em vez disso, esta é apenas uma pequena nota que podemos escrever para nós mesmos. Agora vamos falar sobre esta linha de código aqui. Var s TR é igual a Olá playground Quando estamos programando, há muitos dados que precisamos manter o controle. Então, uma variável é apenas uma maneira de manter o controle de um único pedaço de dados e aqui estavam criando ou declarando uma variável. Assim, a primeira parte desta variável é var, e é simplesmente dizer rápido que estamos fazendo uma variável. Em seguida é str em Este é o nome real fora dessa variável e, finalmente, colocamos um sinal de igual e, em seguida, colocamos o pedaço de dados que queremos armazenar em nossa variável. Neste caso, é str não este é um processo de realmente fazer ou declarar uma variável. Mas uma vez que nós realmente criou a variável, nós podemos alterar os dados que ele mantém simplesmente como este s t r é igual a Olá compartilhamento de habilidade e você pode ver que eu estou usando a mesma variável. Mas agora eu estou colocando um pedaço diferente de dados nele e notar que eu não usei a
palavra-chave var até agora só é usado quando nós criamos a variável pela primeira vez. Mas aqui eu não estou realmente criando a variável. Em vez disso, estou apenas mudando os dados que a variável contém. Então aqui ele segura Olá, playground. E agora a mesma variável é válida. Olá, Skill. Compartilhe aqui e nós vamos digitar print e vamos colocar o nome da nossa variável entre dois colchetes. Suficiente. Vamos em frente e executamos nosso código. Então, apenas trazendo nossas bocas para o lado esquerdo ao trazê-lo para a última linha e clicando neste botão de corrida, você pode ver o Cônsul Príncipe. Olá, playground. Agora você pode estar se perguntando, por que ele diz olá? Playground e não Olá compartilhamento de habilidade. Bem, isso é porque neste momento, onde estamos imprimindo são variáveis, a variável ainda diz “Olá, playground”. É no Lee Online 8 que nós realmente mudar a variável para dizer Olá compartilhamento de habilidades. Então, se formos em frente e digite print e o nome da nossa variável novamente e trazemos nosso mouse aqui e clicamos em executar, você pode ver agora ele diz olá escala share. Então agora espero que você esteja começando a entender como as variáveis se comportam Agora há outro tipo de variável que é chamado de constante e uma constante é criada com a palavra-chave let em vez da palavra-chave var. Então agora podemos digitar o nome da nossa constante. Então deixe a cor do meu cabelo é igual a preto e isso está declarando uma constante muito semelhante a uma variável. Mas a única diferença é que uma constante nunca muda. Então você pode ver aqui com str fomos capazes de reatribuir o valor de str simplesmente colocando o nome e, em seguida, colocando um sinal de igual e colocando um novo valor. Mas se formos em frente e dizer que minha cor de cabelo é igual a verde e agora tentamos executá-lo, você pode ver X Code vai nos dar um erro e o erro diz que não pode atribuir valor a minha cor de cabelo é uma constante let. Então, dizendo colocando a palavra-chave, vamos dizer que esse valor nunca pode mudar. Por que iríamos querer fazer isso? Usamos constante quando sabemos que os dados dentro da constante
nunca mudarão . E ao colocar vamos garantir que sempre que tentarmos usar essa variável, os dados dentro dela serão os mesmos, de
modo que garante que essa variável nunca mudará por acidente ou mudará em
qualquer lugar do nosso código. Então você deveria. Em Lee é uma constante quando você sabe que os dados que ele mantém nunca vai mudar. Como a cor do meu cabelo provavelmente não vai mudar a menos que eu dieta, mas mais seguro algo como idade. Você provavelmente quer usar um longe e não deixar porque idade é um tipo de dados que provavelmente irá mudar quando se trata de nomear suas variáveis. Há algumas regras que você tem que seguir. Em primeiro lugar, sua variável não pode começar com um número. Em vez disso, a primeira letra da variável haas para ser uma letra. E depois da letra, você pode colocar quantos números dentro do nome da variável quiser no próximo ano. Variável só pode ser composta de letras e números e não sublinha nada mais, incluindo espaços, modo que você não pode ter espaços em seus nomes de variáveis. Finalmente, a última regra é que letras maiúsculas são distintas das letras minúsculas, modo que esta variável não é a mesma que esta variável. Estas são variáveis completamente separadas, então você tem que ter cuidado com isso. Existem duas convenções de nomenclatura principais que as pessoas usam quando se trata de nomear suas variáveis. O primeiro 1 é chamado Camel Case, e é aí que você capitaliza a primeira letra de cada palavra, exceto a primeira palavra . A segunda convenção de nomenclatura é chamada Snake Case, e é quando você adiciona um sublinhado após cada palavra, e todas as letras na variável são minúsculas. Então não importa qual desses você usa. Você pode escolher o que quiser, desde que você fique consistente com ele.
10. Swift 2 - tipos de dados: Tudo bem, agora, eu vou ir em frente e excluir essas duas linhas de código, e eu também vou deletar essa linha de código. O programa Sore não falha. E também vou comentar as declarações impressas para que o nosso cônsul não seja inundado com diferentes declarações impressas. Agora, você deve ter notado que o tipo de dados Onley que temos armazenado em nossa variável tem sido texto, e esse texto é realmente chamado de string. Então isso pode parecer estranho para você no início. Mas a razão pela qual é chamada de string é porque é uma string de caracteres e você
notará que todas as strings têm que ser entre aspas. Agora, há na verdade um monte de diferentes tipos de dados que enfraquecem o armazenamento em nossas variáveis. Mas há quatro principais sobre os quais falaremos hoje. E já cobrimos um desses, que é a corda. A próxima é a interseção. Então isso inclui todos os números inteiros, incluindo todos os números inteiros negativos e zero para que possamos ir em frente e fazer uma variável chamada minha idade e vai definir isso para 10. Não se preocupe, eu não tenho 10 anos de idade, então a coisa legal sobre inteiros, ao contrário de strings, é que nós podemos realmente fazer operações neles. Então podemos dizer que minha idade é igual a minha idade mais um. E o que isto está a fazer é que está a definir a minha idade para ser a minha idade, que é 10 mais um. Então agora a minha idade vai ter 11 anos depois disto. Então, se eu imprimir minha idade e executar nosso código, você pode ver 11 aparecendo no console. No entanto, se eu tentar fazer isso com uma string, digamos, eu crio uma variável chamada minha ovelha e eu vou definir isso como 10 como uma string, então você vai notar. Eu coloco aspas em torno do número 10 e agora eu tento dizer,
minha ovelha é igual a minha ovelha mais uma e eu tento imprimir minha ovelha e eu corro nosso código. Você pode ver que nos dá um erro. A razão é que não podemos realmente adicionar números ao texto, então X Code não está tratando isso como um número. Em vez disso, está tratando-o como texto, e então você não pode adicionar um número a uma palavra, por exemplo, então há realmente uma diferença entre 10 como um inteiro e 10 como um fluxo e eu
vou em frente e apague tudo isso. O próximo tipo de dados é chamado de Duplo e isso é todos os números decimais. Para que eu possa fazer de uma variável minha dupla esperança. Eu esqueci a palavra-chave distante e eu posso definir isso para 0.865 e este é agora um tipo de dados duplo e eu posso ir em frente e imprimir o meu duplo e lá está o nosso duplo. Finalmente, o último tipo de dados é o barras e um booleano é verdadeiro ou falso Então eu posso salvar o nosso é verde e eu posso definir isso como verdadeiro. E agora se eu imprimir é verde, você pode ver que ele é verdadeiro e eu também posso mudar de verde para falso e um Booleano pode ser verdadeiro ou falso? Agora, se eu sair na impressão, você pode ver que é verde é falso Agora a próxima coisa que eu quero falar é que você não pode fazer uma variável ter dois tipos de dados diferentes. Então, o que eu quero dizer com isso? Então nós criamos uma variável chamada minha idade aqui e dissemos que 10 e 10 é um inteiro Isso
significa que minha idade pode sempre em Lee ser uma interjeção. Então, se tentarmos reatribuir minha idade a uma string, por exemplo, nós estamos realmente indo para obter uma mensagem aérea e ele diz não pode atribuir valor do tipo string para type end. Mas se eu fizer 563 já que 563 é um inteiro, você pode ver que não vamos chorar. Então, se eu tentar definir é verde, que é do tipo Boolean para um número ou um inteiro, nós também vamos receber uma mensagem de erro então não é possível atribuir valor do tipo inteiro para o tipo Booleano. Agora, você pode estar se perguntando, em que ponto nós especificamos que é verde é um booleano Bem, quando nós criamos é verde pela primeira vez nós atribuímos a true e true é um booleano Então nós indiretamente especificado que é verde vai ser um Booleano e você nunca pode ser nada além de um Booleano
11. Swift Parte 3 - se as declarações: nesta lição, vamos aprender tudo sobre suas declarações. Então eu vou ir em frente e criar um novo arquivo de playground e eu vou clicar em Avançar e
salvá-lo na minha área de trabalho. Vou começar apagando essa linha de código, e também vou abrir o console. Agora vou criar uma variável chamada número de peixes. Vou definir isso para 10. Agora, o que eu posso fazer é escrever uma declaração if usando a palavra-chave se e então eu posso colocar uma condição aqui. Então a condição que eu vou colocar é se o número de peixes é maior que 10 e agora eu posso
abrir um colchete encaracolado e eu posso colocar outro colchete para abrir este pequeno espaço aqui. Agora, eu posso digitar o código que eu quiser dentro deste dentro destes dois colchetes, então eu vou começar digitando impressão. Isso é um monte de peixe. Agora, o que vai acontecer é que vamos passar pelo nosso código e vamos verificar esta primeira condição para que ele vai verificar se o número de peixes é maior que 10. E se
for, vai executar todo o código dentro destes dois colchetes. Mas se não
for, vai pular completamente esta declaração se. Então, se eu ir em frente e correr aqui, você pode ver que nada realmente é impresso para o nosso cônsul a menos que porque o número de peixes não
é maior do que 10 ele é realmente definido como 10. Mas se eu ir em frente e definir para 11 e agora eu rodar nosso código, você pode ver que muitos peixes são impressos para o cônsul agora. Outra coisa que eu posso fazer é adicionar mais condições para que eu possa realmente escrever outra coisa. Se o número de peixes for maior que cinco e aqui posso imprimir. É uma quantidade decente de peixe. E agora, se eu definir o número de peixes para seis, a primeira condição vai ser ignorada porque seis não é maior que 10. No
entanto, vai passar para a próxima condição, e esta vai passar. Então, se eu seguir em frente e executar nosso código, você pode ver que uma quantidade decente de peixe é impresso. Agora veja, eu faço essa variável 50 e 50 é maior que 10 e é maior que 5 Então vamos ver o que acontece. Então é um monte de peixe que fica impresso. A razão para isso é que ele começa verificando a primeira condição, e esta condição é verdadeira, então ele irá executar o código dentro dos colchetes em. Em seguida, ele vai terminar a instrução if, então apenas uma condição dentro da instrução S pode ser executada. Agora, outra coisa que você pode adicionar à sua declaração não é mais bloquear. E então o que isso faz é se nenhuma das condições especificadas for verdadeira. Ele corre o que quer que esteja dentro do bloco de outros. Então aqui podemos imprimir. Isso não é muito peixe. E agora se eu definir isso para a primeira condição é falsa, a segunda condição é falsa, e assim ele vai para o bloco else. Então, se eu executar, você pode ver que não é um monte de peixe é impresso no nosso conselho. Agora você pode realmente adicionar muito mais instruções if, então você pode adicionar quantas outras instruções quiser. Então eu posso fazer outra coisa. Se o número de peixes é igual a quatro e aqui eu posso imprimir nós temos quatro peixes, e se eu dissesse isso a quatro. Você pode ver que temos quatro peixes impressos, então a primeira condição é falsa. A segunda condição é falsa, e vou continuar interessado. É mais claro, mas a terceira condição é realmente verdadeira. Agora, você deve estar se perguntando, por que eu usei para iguais sinais aqui e não um? Bem, um sinal de igual é realmente dizer que queremos o número de peixes igual a quatro. Mas aqui não estamos dizendo que queremos número de peixes igual a quatro. Em vez disso, queremos verificar se o número de peixes é igual a quatro. E é por isso que costumávamos igualar sinais. Então, um sinal de igual é realmente definir o valor, e para igual sinais de tiro é verificar o valor agora algumas outras coisas que você pode fazer com. Se as instruções for, você pode adicionar maior ou igual a, ou você pode fazer menor ou igual a. E, finalmente, você pode realmente não é igual a, colocando um ponto de exclamação e, em seguida, é igual. Então vamos ver o que vai acontecer agora. Então, o número de peixes é maior ou igual a 10? Não, não
é. É o número de peixes menor ou igual a cinco. Sim, é. Então, se sairmos e executá-lo, você pode ver que é uma quantidade decente de peixe vai realmente ser executado. E isso é tudo o que você tem que saber. Se declarações, por enquanto. Agora, eu tenho um pequeno desafio para você. Quero que abras um novo projecto de parque infantil e uma variável criativa chamada Animal, e podes começar por pôr isto para o cão ou o que quiseres. E agora quero que escreva um depoimento dos cheques se o animal é um cão, um gato ou uma vaca, e se for um cão, quero que imprima latido ao cônsul. Se for um gato, você pode me imprimir, e se for uma vaca, você pode imprimir, se mover.
12. Conectar a interface ao código: Agora estou de volta ao nosso arquivo de jogo de cartas de guerra, e agora estou no arquivo principal de storyboard ponto. Então, nesta lição, nós realmente vamos estar conectando nossos elementos I ao nosso código para que possamos manipulá-lo com nosso código. Então o que vamos fazer é dentro do nosso storyboard principal. Vamos chegar a estas linhas aqui no topo, certo? E nós vamos clicar no assistente sobre isso vai trazer nosso editor assistente. Então este arquivo de código realmente pertence a este controlador de visualização ou a esta tela. Então eu vou começar fazendo algum espaço sob este controlador de visão de classe. Você eu vejo controlador, e nós vamos começar conectando nossos cartões ao nosso código. Então a maneira que você pode fazer isso é você pode abrir este painel aqui da esquerda
clicando neste botão, e você pode usar esta pilha aqui para navegar facilmente através do elemento diferente você I . Ou, em vez disso, você pode realmente simplesmente clicar sobre eles a partir do próprio controlador de visão. Vou começar com este cartão à esquerda. Você deseja manter pressionado o botão de controle no teclado e arrastou o cartão para o casaco. Então, eu vou apenas colocá-lo sob este controle de visão classe Colon novo I ver controlador. E uma vez que você soltar, você pode ver que ele vai pedir para você nomear a variável. Então eu vou chamar este cartão de camada, e agora eu vou clicar em Conectar. E agora temos uma variável quatro nosso cartão. E agora vou arrastar a carta certa segurando o controle e arrastando-a baixo. Vou ligar para este cartão de CPU e clicar em Enter. Agora, a próxima coisa que queremos conectar é nosso texto de ponto real. E então precisamos conectar este código de turnê para que possamos realmente aumentar o número de pontos para cada jogador através do nosso código. Então eu vou começar. Na verdade, eu vou abrir este painel aqui porque é meio difícil arrastá-lo do
controle de visão e alguém para começar com zero bem aqui embaixo da pilha de jogadores. Eu vou controlar arrastá-lo e eu vou chamar este texto de pontos de camada, e eu vou clicar em Enter e finalmente, vamos pegar o texto de pontos de CPU, e eu vou chamá-lo de texto de pontos de CPU. E agora temos todas as nossas variáveis. Temos a variável de cartão de jogador a variável de cartão de CPU os pontos de jogador da variável de texto na CPU, pontos de imposto a pagar. Mas há apenas uma última coisa que temos que conectar ao nosso código, que é na verdade o botão de acordo. Então nós não queremos que isso seja uma variável porque nós não queremos realmente mudar nada sobre o botão negócio. Em vez disso, queremos conectá-lo como uma função. Então eu vou em frente e abrir algum espaço aqui embaixo sob o bloco de código do Funk, e eu vou controlar arrastar o botão de negócio bem aqui embaixo. E agora quero que você precise mudar esse tipo para você, mas também vamos continuar renomeando para negociar. E agora temos este bloco de código aqui que é executado todas as vezes. O botão de negócio é realmente pressionado. E então agora eu vou ir em frente e clicar no nosso imposto de controle de visão apenas para ver todo o nosso código muito mais facilmente. Então esta é uma função e todo o código dentro da função vai ser executado
toda vez que nosso botão de negócio é pressionado. Outra coisa que quero apontar. Então, digamos que quando você está conectando um dos elementos U I, você cometeu um erro de digitação. Então digamos que eu chamei esta multidão jogador em vez de cartão de jogador e um clique conectar. Bem, agora temos um erro de digitação e precisamos consertar isso. Então você pode pensar que você pode apenas vir aqui e renomeá-lo para salvar cartão de jogador. Mas isso realmente não vai funcionar, porque se você clicar com o botão direito no cartão aqui, você pode ver que ele ainda está conectado à multidão de jogadores, então ele vai tentar encontrar uma variável que realmente não existe. Bem, então, como você conserta isso? Então você pode excluir toda a variável e, em seguida, clique com o botão direito do mouse no cartão e excluir a conexão. Então, sob as tomadas de referência, você pode apenas clicar no X aqui e agora este cartão não está conectado a nada, e agora nós podemos realmente arrastá-lo de volta e nomeá-lo corretamente. E também você pode ver que quando eu passar o mouse sobre esses círculos aqui eles realmente descrevem o que eles estão conectados. Então cartão de jogador está ligado ao cartão aqui à esquerda. Este está ligado ao cartão à direita, e estes tipos estão ligados ao texto.
13. Adição do código parte 1: Nesta lição, vamos codificar o nosso jogo de cartas de guerra para lhe dar alguma funcionalidade. Então, no final desta lição, nós vamos ter um aplicativo totalmente funcional onde podemos clicar no botão de negociação e
cartões aleatórios são escolhidos para o jogador e a CPU e qualquer jogador que tenha a carta mais alta. Então, neste caso, era uma CPU. Eles vão ganhar um ponto. Então, entrando em nosso projeto de código X agora, eu estou dentro do arquivo View Controller Dot Swift, e eu quero chamar sua atenção para este negócio pressionado função então dentro daqui, eu vou ir em frente e escrever print tap. Agora, se eu executar nosso programa, você pode ver nosso aplicativo se abre. E toda vez que apertei um acordo, o top do botão é impresso para o cônsul. Então, se eu pressionar mais cinco vezes, você pode ver que a torneira é impressa mais cinco vezes para o conselho. Tudo bem, então sabemos que todo o código dentro daqui é executado toda vez que o botão é pressionado . A primeira coisa que queremos fazer para o nosso jogo é que as imagens dos cartões mudem cada vez que pressionamos o botão de negociação, então vamos ver como poderíamos fazer isso manualmente. Então, indo para o nosso storyboard de pontos principal, se quisermos mudar a imagem para os cartões, nós clicaríamos no cartão e, em seguida, na dor de atributos. Chegamos a esta imagem um tributo, e a partir daqui podemos definir qualquer imagem que quisermos para esta imagem atributos, e ela muda com base no que imagery seleciona. Isso é ótimo e tudo, mas queremos ser capazes de fazer isso automaticamente através do nosso código. Então vamos ver como faríamos isso. Temos nossa variável de cartão de jogador aqui em cima. Então, se formos em frente e digitar cartão de jogador e se nós digitar um ponto depois, nós realmente obter acesso a todos os atributos disponíveis para este cartão. E um desses atributos é o atributo image, e este é exatamente o mesmo atributo que vimos anteriormente em nosso storyboard. Então o que podemos fazer é que podemos realmente definir o atributo de imagem das cartas do jogador para qualquer imagem que quisermos, e para fazer isso, vamos em frente e digitar você. Eu imagino e você vai notar. Código X é auto sugerindo código para nós. E se formos em frente e
apertarmos Enter, podemos usar códigos ex. Sugestão automática. Agora, se abrirmos um colchete e escrevemos e queremos ir em frente com esta
sugestão nomeada , então se clicarmos em enter novamente, podemos realmente especificar o nome da imagem que queremos definir para este ponto de cartão de jogador atributo de imagem. Então, se formos em frente e abrir algumas aspas, podemos realmente digitar o nome da imagem que queremos definir a imagem da carta de jogador, também. Então, se entrarmos em nossa pasta Ativos, essas são todas as imagens que temos disponíveis, e aqui podemos ver todos os nomes de cada uma dessas imagens. Então vamos mudar nossa imagem de cartão de jogador para cartão
para, por exemplo, no controle View. Nós podemos realmente apenas digitar cartão para aqui, e agora a imagem do cartão de jogador será definido toe você imagem I que é nomeado cartão para cada vez pressionamos o botão de negócio, e podemos fazer exatamente a mesma coisa para o cartão de CPU. Então, se acessarmos os atributos de imagem que podemos configurá-lo para, Você é? Imagino que esse nome é, digamos, por exemplo, cartão cinco. E agora, se formos em frente e executar novamente o nosso programa clicando nesta seta aqui em cima, podemos ver que quando clicamos no botão de negociação, as cartas mudam para dois e cinco exatamente o que especificamos aqui. Mas se pressionarmos novamente, você pode ver que nada está acontecendo porque eles já estão definidos para dois e cinco e nós estamos tentando colocá-los para dois e cinco novamente. E então nada vai acontecer. Então o que temos que fazer é ter uma carta aleatória toda vez. Fizemos um acordo, mas podemos ir em frente e excluir esta declaração de impressão, e podemos criar uma variável chamada número de cartão de jogador. E queremos que este seja um número aleatório cada vez que pressionamos o botão de negócio para que possamos configurá-lo para terminar ponto aleatório e você pode ver que é auto sugerindo auto sugerindo isso no
método intervalo . Então, se apenas clicar em digitar código X, vai preencher automaticamente isso para nós agora aqui? O código X está a dar-nos algum código de espaço reservado neste é onde vamos introduzir o intervalo para nosso número aleatório. Então, para fazer isso enfraquecer digite o menor número no intervalo, que é seguido por três períodos e, em seguida, o maior número no intervalo, que é 14. Agora, se você está se perguntando por que são intervalos de 2 a 14 podemos clicar na pasta Ativos e você pode ver os menores números de cartão também. E o maior número de cartão é 14. Então agora toda vez que pressionamos um botão de negócio, esta variável número de cartão de jogador vai ser um número aleatório entre dois e 14. E agora precisamos fazer exatamente a mesma coisa para a CPU. Então número da placa CPU é igual ponto final aleatório e podemos especificar o intervalo. Agora podemos ir em frente e imprimir o número do cartão de jogador, e podemos imprimir o número do cartão da CPU. E agora, se executarmos o nosso programa e apertarmos o botão de acordo, podem ver
que temos dois números impressos para o nosso cônsul. Se formos em frente e pressioná-lo mais algumas vezes, você pode ver todas as vezes. Estes números são completamente aleatórios, mas os cartões ainda não estão mudando, e isso é porque nós realmente não usamos esses números aleatórios. Então o que temos que fazer é substituir esses números aqui por esses
números aleatórios que acabamos de criar para que possamos fazer algo chamado interpolação de cordas. Então, sempre que queremos colocar uma variável dentro de uma string, podemos realmente colocar uma barra invertida e, em seguida, abrir dois colchetes e você pode ver que ela se torna branca agora e aqui podemos colocar qualquer variável que quisermos para que possamos ir em frente e digitar número do cartão de jogador. Agora. O que está acontecendo aqui é que a imagem da carta do jogador está sendo definida como uma imagem chamada Card, seguida pelo número da carta do jogador, que é um número aleatório que estamos gerando cada vez. Então agora podemos fazer a mesma coisa para a CPU para que possamos digitar uma barra invertida, e então podemos abrir um par de colchetes e digitar o número da placa da CPU. E agora vou apagar estas impressões digitais. E agora, se eu executar o programa, você pode ver que toda vez que eu pressionar o botão de negociação tanto o jogador quanto o CPE você recebe um cartão
aleatório
14. Adição do código parte 2: Agora, a próxima coisa que temos que fazer é verificar se o jogador um ou o CPU um. E dependendo de quem, precisamos aumentar os rótulos de pontos aqui em baixo. Então isso parece um trabalho para a declaração “if”. Agora, antes que possamos escrever qualquer código aqui, nós realmente temos que criar algumas variáveis que mantêm a pontuação para cada jogador. Então aqui em cima podemos criar uma variável chamada var jogador pontuação e enfraquecer defini-la para zero. E agora precisamos de outra variável chamada pontuação da CPU. E nós também podemos definir este 20 agora dentro da nossa função de negócio pressionado. Podemos escrever uma declaração if que verifica qual jogador. E para fazer isso, podemos escrever se o número do cartão do jogador é maior que o número do cartão da CPU e podemos ir em frente e abrir um par de colchetes. Agora, qualquer código dentro daqui será executado se o número da placa do jogador, que estamos gerando aparecer, é maior que o número da placa da CPU que estava gerando aqui. Então isso significa que o código que é executado aqui só será executado se o jogador ganhar. Então eu só vou escrever um comentário que diz jogador ganha sobre isso só vai ser Isso vai ser apenas um comentário marcador de posição para agora e agora eu posso escrever um outro se declaração os
cheques se o número do cartão do jogador é menor do que o número do cartão da CPU. E dentro desses colchetes, o código que é executado aqui será se a CPU ganhar. E finalmente podemos colocar um IST. L declaração sobre esta declaração l significa que o jogador o jogador não ganhou, nem que a CPU, que significa que tanto o jogador ea CPU tem o mesmo cartão exato. E por isso aqui vai ser um empate. Agora, vamos pensar, o que queremos fazer quando o jogador ganhar? Então a primeira coisa que temos que fazer é aumentar essa variável chamada pontuação do jogador para que
possamos escrever jogadores. Pontuação é igual aos jogadores pontuação mais um, e isso vai aumentar um para os jogadores marcar cada vez que o jogador ganhar . Mas isso não mudará o rótulo aqui porque essa variável de pontuação do jogador
não está conectada ao rótulo. Então o que temos que fazer é ir para o texto de pontos do jogador e temos toe acessar a
propriedade text deste jogador aponta rótulo de texto. Então, para fazer isso, podemos escrever um ponto, e agora temos acesso a todas as propriedades para este jogador aponta rótulo de texto na propriedade que queremos é uma propriedade text, e queremos definir isso para a pontuação do jogador. Agora, se eu for em frente e pressionar o comando ser e o que isso vai fazer é ter código X, compilar nosso código e mostrar qualquer erro que possamos ter. Então eu vou ir em frente e pressione comando ser e você pode ver que temos um erro e ele diz que não pode atribuir valor do tipo final para tipo string. Então o que isso está dizendo é que o texto do estoque de tecnologia de pontos de jogador é uma string, mas nossos jogadores pontuação é um inteiro, e isso é porque nós inicializamos com um zero, que é uma interjeção. Portanto, não podemos definir um inteiro para ser uma string. Então o que temos que fazer é mudar este jogador,
pontuação variável em uma string, pontuação variável em uma string, e para fazer isso podemos digitar string e, em seguida, abrir um colchete e colocar um colchete depois da pontuação dos jogadores e isso está realmente mudando. Nossos jogadores marcam para ser uma corda. Agora, se eu ir em frente e pressionar o comando ser novamente, você pode ver que o erro desapareceu. Agora e agora temos que fazer exatamente a mesma coisa se a CPU ganha então vamos fazer CPU pontuação
igual CPU pontuação mais um e, em seguida, pontos de CPU, texto ponto texto igual string CPU pontuação. E agora, se eu executar nosso código, você pode ver toda vez que eu apertar o botão de negócio nosso código verifica quem é o vencedor, e dependendo de quem ele é, ele aumenta o rótulo de pontuação para que você possa ver que o rei é maior que o Jack. Então a CPU tem um ponto e tudo. Temos um empate aqui, e isso é realmente engraçado porque não codificamos nada para o sorteio. Então a declaração mais foi apenas executado porque o jogador não ganhou e nem o enganar você e, em seguida, o Jack é maior do que os quatro e assim por diante. Certo, agora vamos pensar no que queremos fazer. Se é um empate, daí? Eu quero fazer é eu quero aumentar tanto a pontuação dos jogadores e a pontuação da CPU por um para que eu possa ir em frente e escrever. pontuação do jogador é igual à pontuação do jogador mais um e a pontuação da CPU é igual à pontuação da CPU mais um e depois aos pontos do
jogador. O texto é igual à pontuação dos jogadores de cordas e pontos de CPU. Sexo é igual a Oh, eu esqueci o texto do ponto aqui, e então nós não podemos realmente mudar o rótulo para ser uma string. Em vez disso, temos que alterar o atributo fiscal do rótulo. Então isso é um erro que eu fiz e texto ponto é igual a string C. Pugh pontuação. E agora nós apenas lidamos com o que vai acontecer se, no caso de um empate, então ambos os jogadores pontuação será aumentada em um e a escola CPU será aumentada um. E aqui nós estamos apenas mudando os rótulos de texto para corresponder ao que essas variáveis dizem, e é isso. Acabamos de terminar nossa primeira parada, o jogo de cartas de guerra, então eu vou executá-lo pela última vez aqui e podemos conferir o produto final e lá está
15. Instalando o seu dispositivo: nesta lição final. Eu só vou explicar para você como você iria executar nosso jogo de cartas de guerra ou qualquer up que você faz em seu próprio dispositivo pessoal. Então, a primeira coisa que você deseja fazer é conectar seu dispositivo ao Mac fisicamente com um cabo com fio real. E depois de fazer isso, você será solicitado no seu telefone para inserir sua senha. Então você quer ir em frente e digitar sua senha. E se esta é a primeira vez que você conecta seu telefone ao computador, ele vai perguntar se você quer confiar em um computador, então você vai querer clicar em Sim, para isso. Depois, você virá até a guia de dispositivos e verá seu dispositivo bem
aqui no topo. Sei que não há dispositivos porque meus dispositivos pessoais não estão conectados. Mas quando estiver, você verá seu telefone bem aqui, e você vai querer selecioná-lo e, em seguida, basta clicar no botão Executar e ele deve construir sobre o seu dispositivo. Além disso, você só vai ser capaz de usar sua operação em seu dispositivo por sete dias, e se você quiser ser capaz de usá-lo para sempre. Você precisará atualizar para uma conta de desenvolvedor da Apple, que custa US$100 por ano. E eu não recomendo que você faça isso até que você esteja pronto para carregar seu aplicativo para a APP Store.
16. Considerações finais: , Antes de ires, queria
dar-te os parabéns por teres completado esta aula. Espero que agora você tenha um bom entendimento sobre o que é preciso para compensar. Claro, ainda
há muito para você aprender, mas espero que este tenha sido um ótimo começo. Sua jornada. Além disso, peço que deixe um comentário para esta classe para que isso me ajude a construir credibilidade na partilha de habilidades e para que esta classe chegue a mais pessoas. Se houver algum feedback que você queira me dar sobre qualquer coisa que você não gostou sobre esta aula, por favor me avise na seção de discussão para que eu possa atualizar o material da aula. Tudo bem, isso é tudo por enquanto. Tenha um bom dia e boa sorte em sua jornada.
17. Projeto do curso: Então o projeto para esta classe é fazer um aplicativo semelhante a este onde há um rótulo de texto no meio e dois botões logo abaixo dele. Então, quando eu clicar no botão Olá, você pode ver que diz olá mundo e a imagem aqui em cima realmente muda. E quando eu clico adeus, ele diz adeus mundo. Então, é claro que você pode nos tornar criativos como quiser. Com isso, você pode usar um fundo personalizado imagens personalizadas para a imagem aqui em cima que diz olá e adeus. E você nem precisa usar o “Olá mundo” e o texto do mundo de adeus. Você pode usar qualquer texto que você quiser para que você possa ser tão criativo quanto quiser com este projeto . Em seguida, eu queria ensinar vocês como importar suas próprias imagens para o seu projeto final. Então eu vou ir em frente e olhar para uma foto de um quente e eu vou digitar a palavra PNG depois para que a imagem seja transparente e eu vou para imagens e nós podemos usar este quente aqui. Então vou guardá-lo no meu computador e agora um código X. Vou clicar na pasta Assets e eu vou clicar com o botão direito aqui e clicar em Image set. E agora, aqui, à direita, ao lado da balança. Queremos mudá-lo de habilidades individuais para uma escala única. E isso nos permitirá colocar apenas uma imagem em vez de três imagens diferentes com três tamanhos
diferentes. Então agora eu posso ir em frente e arrastar meu coração, e lá está ele. Há a nossa imagem importada para o código X. Além disso, renomeie sua imagem clicando aqui uma vez, e agora você pode renomeá-la para que eu possa nomeá-la. Quente sobre este é o nome que você vai usar quando você tentar buscar sua imagem de dentro do seu código. Eu também quero mencionar que se sua imagem é muito grande para sua tela, você pode realmente adicionar com e restrições de altura para que eu possa ir em frente e selecionar com e definir isso para 200. E para a altura, eu posso configurá-lo para 200 e agora eu posso clicar em adicionar a restrições. E não se preocupe, a proporção da sua imagem permanecerá a mesma. E isso é desde que você tenha,
hum, hum, ajuste de
aspecto selecionado no modo de conteúdo. Quando você está tudo feito de fazer o seu aplicativo, você pode executá-lo em qualquer simulador que você quer, e então você pode vir aparecer para o arquivo, e então você pode clicar em salvar tela, e isso terá uma captura de tela de sua imagem e salvar para a sua área de trabalho. E você provavelmente deveria tirar uma foto da tela de saudação e da tela de adeus. E agora você pode enviá-los para a seção do projeto nesta classe para que você possa mostrar sua criatividade e criação de aplicativos habilidades para todos os outros.