Formulários de Xamarin - Crie aplicativos em C# - Iniciante para avançado ✅ | Grant Klimaytys | Skillshare

Velocidade de reprodução


  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x

Formulários de Xamarin - Crie aplicativos em C# - Iniciante para avançado ✅

teacher avatar Grant Klimaytys, Software Engineer

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Aulas neste curso

28 aulas (2 h 45 min)
    • 1. Apresentação

      3:13
    • 2. Configuração de Xamarin em um Mac

      5:09
    • 3. Configuração de Xamarin em um PC (Visual Studio)

      5:09
    • 4. Como conectar o Xamarin em um Mac ao Xamarin em um PC (opcional)

      2:58
    • 5. A diferença entre o Xamarin Studio no Mac / PC e Visual Studio

      2:42
    • 6. Quando usar formulários Xamarin e quando não usá-los

      5:12
    • 7. Compreender o paradigma do modelo de visualização de modelo (MVVM)

      3:04
    • 8. Como criar um projeto de formulários Xamarin "Hello World"

      7:32
    • 9. Como configurar simuladores Xamarin iOS e Android e executar "Hello World"

      8:04
    • 10. Como alterar nosso layout de tela inicial e elementos

      6:37
    • 11. Introdução ao Just Fit X 1

      0:45
    • 12. Como desenhar nosso nicho de aplicativo

      3:42
    • 13. Como criar os elementos gráficos XAML do nosso aplicativo

      10:13
    • 14. Como escrever o código de aplicativo principal - Usando as preferências de usuário para armazenar dados

      9:44
    • 15. Como adicionar anúncios do Google Admob a um aplicativo de formulários Xamarin

      19:01
    • 16. Introdução ao Basta fazê-lo X 10

      1:30
    • 17. Basta fazer o design de aplicativos X 10 e primeira página XAML

      14:33
    • 18. O que é um banco de dados SQLite e por que usá-lo?

      2:25
    • 19. Como instalar um componente Nuget para lidar com operações de banco de dados

      1:31
    • 20. Código de acesso ao banco de dados - Como obter uma conexão de banco de dados SQLite entre plataforma cruzada

      10:59
    • 21. Código de acesso ao banco de dados - Como inserir, excluir e buscar itens

      6:25
    • 22. Como criar um modelo de dados

      3:38
    • 23. Como inserir itens de banco de dados em uma visualização de lista

      9:16
    • 24. Como vincular variáveis duas maneiras no Xamarin Forms

      4:08
    • 25. Como abrir uma nova página, controlador de visualização ou atividade no Xamarin Forms

      4:33
    • 26. Como criar o layout XAML da tela de tarefa Editar

      4:36
    • 27. Como salvar a tarefa editada no banco de dados

      6:37
    • 28. Uma recapitulação rápida de tudo o que você aprendeu

      2:09
  • --
  • Nível iniciante
  • Nível intermediário
  • Nível avançado
  • Todos os níveis

Gerado pela comunidade

O nível é determinado pela opinião da maioria dos estudantes que avaliaram este curso. Mostramos a recomendação do professor até que sejam coletadas as respostas de pelo menos 5 estudantes.

585

Estudantes

--

Sobre este curso

Crie aplicativos fantásticos no iOS e Android ao mesmo tempo usando o Xamarin Forms 2.0!

Seus aplicativos serão criados em um único projeto com código compartilhado. Esse código está no C#, o código mais fácil e popular ao redor!

Isso significa:

  • Não há Java para aprender (Android).
  • Não há rápido para aprender (iOS).

Você vai ir de iniciante a completamente proficiente no Xamarin Forms 2.0 (Released End of 2015).

NENHUM OUTRO CURSO leva você tão facilmente ao longo do processo e com tanto detalhe e clique em REGISTRAR-SE agora!

b2111d30


Este curso é para você, se quiser:

  • Aprenda o processo de desenvolvimento de formulários Xamarin 2.0 - desde o desenvolvedor de aplicativos completo para iniciante
  • Seja pago $100 - $150 por hora para criar aplicativos para clientes pagantes
  • Crie seus próprios aplicativos populares descontroladamente
  • Veja todo o processo de desenvolvimento como ele realmente é.
  • Tenha um aplicativo real que você pode publicar na sua própria conta

Qual software você precisa?

  • Estúdio de Xamarin (edição inicial gratuita ou teste de negócios gratuito disponível).
  • Um PC ou Mac

Você precisa de experiência?

  • Não. Eu suponho que você seja um iniciante completo para o desenvolvimento de Xamarin

Conheça seu professor

Teacher Profile Image

Grant Klimaytys

Software Engineer

Professor

My very first software program was the artificial intelligence brain of an underwater robot in the early 2000's, still the coolest project I have ever worked on!

Since then I have designed and built websites, software and apps using all manner of languages and frameworks. Javascript, Bootstrap, .Net, Python, PHP - you name it, I've probably used it.

These days I focus on building quality cross platform apps using Xamarin studio in C#, Xcode and Swift 2 and Android Studio.

If you're considering becoming a freelance developer then I can honestly say it is the best life in the world. You will have no boss, earn an hourly rate of $60 - $150 and take holiday whenever you want!

Of course you have to learn how to make good apps first, which brings me to my second pa... Visualizar o perfil completo

Nota do curso

As expectativas foram atingidas?
    Superou!
  • 0%
  • Sim
  • 0%
  • Um pouco
  • 0%
  • Não
  • 0%
Arquivo de avaliações

Em outubro de 2018, atualizamos nosso sistema de avaliações para melhorar a forma como coletamos feedback. Abaixo estão as avaliações escritas antes dessa atualização.

Por que fazer parte da Skillshare?

Faça cursos premiados Skillshare Original

Cada curso possui cursos curtas e projetos práticos

Sua assinatura apoia os professores da Skillshare

Aprenda em qualquer lugar

Faça cursos em qualquer lugar com o aplicativo da Skillshare. Assista no avião, no metrô ou em qualquer lugar que funcione melhor para você, por streaming ou download.

Transcrições

1. Apresentação: Oi lá. E bem-vindo a este curso sobre a criação de mapas com formulários xamarin. Agora, Sammer informa, faz parte da plataforma xamarin e formas, leva um passo adiante e permite que você crie APS em janelas Android e Mac e eu nos em C afiado com uma única base de código. E eu vou mostrar a vocês como fazer isso com os novos formulários xamarin. Dois pontos. Oh, eu estou gravando isso em 2016 quando xamarin formulários 2.0, acabou de sair. E se você é um iniciante para Samrin, então este curso é perfeito para você. Se você é um veterano de Samrin, mas ainda não usou formulários. Então, novamente, este curso também é perfeito para você. Neste curso, vamos aprender a fazer três APS. O 1º 1 é um aplicativo simples Olá mundo. O 2º 1 é aquele que você está olhando, que é um aplicativo de item de lista único para fazer. E lá dentro nós vamos aprender como colocar as coisas, como criar botões, eventos em torno desses botões. E então, se você notou, temos isso rodando em um iPhone e um simulador Android e ambos APS usaram 95% de desconto no mesmo código, então eu só tive dois códigos uma vez para duas plataformas completamente diferentes. Então vamos seguir em frente, e vamos criar um vezes 10. Apenas faça isso aplicativo. Onde vai criar um monte de tarefas? E essas tarefas são armazenadas em uma exibição de lista que ilumina mais abaixo a lista que você vai para que ele coloca e importância natural no que é um topo? E quando clicamos em um dos itens, ele abre uma tela de edição e também abordará isso neste curso como abrir novos controladores de exibição ou atividades de uma exibição de lista. Então, dentro dessas caixas, você pode alterar o texto nesse texto, vincula uma propriedade no código atrás dele automaticamente, e eu vou mostrar isso a vocês. E isso é a chave para, Sammer informa. Você tem que saber como isso funciona para criar APS, e quando batemos seguro que é salvo em um banco de dados um sq light um e novamente. Seja qual for o aplicativo que você está criando em qualquer idioma que você precisa saber bancos de dados sq light e eu levá-lo através de tudo isso. Então, junte-se a mim neste curso, eu sou um instrutor emocionante. E sempre que estou ensinando, eu gosto de ter certeza que meus alunos sabem tudo o que está acontecendo, todos os trabalhos de fundo e por que fazemos certas coisas porque alguns instrutores apenas dizem: Vamos criar um banco de dados. Mas por quê? Por que você iria querer criar um banco de dados? E eu te levo por todas essas coisas? Então, no final deste curso, você terá uma boa e sólida ligação à terra, não apenas informa Nzama, mas também em programação nítida em C. Então, junte-se a mim hoje. 2. Configuração de Xamarin em um Mac: Então vamos começar a instalar Exam Oring em nosso Mac. Vá para Samarinda dot com na primeira página. Se você rolar para baixo, você deve ter um link para baixar Samarie. Vá em frente, clique que ele irá abrir uma nova página, pedir-lhe alguns detalhes. Preencha e baixe gaguejando para OS X. Vá em frente e ligue seu instalador quando ele for baixado e clique duas vezes no ícone. E o instalador do Zaman é muito bom em segurar sua mão, percorrendo todo o processo de instalação. Então primeiro você tem que concordar com alguns pedaços, etc, etc. A Andi. Ele detecta seus vários decaimentos e decaimentos s android. Detective, temos o código X em todo o resto. Ele também instala martelando ponto Mac. Então você quer instalar todos esses produtos? Clique em Continuar. Ele pergunta onde seu sdk está ou onde você gostaria de instalá-lo? Puppet onde quer que ele sugere, e, em seguida, basta clicar em continuar e tudo será instalado. E enquanto isso nas lojas, eu só vou voltar para o meu navegador da Web e apontar que você pode começar um teste de 30 dias gratuitamente fora Samrin Business Edition. Agora, para esses tutoriais, provavelmente é uma boa idéia ter essa adição ou pelo menos a edição de desenvolvedor indie. Então, se você teve mais de dois desenvolvedor dot zaman dot com ou simplesmente pesquisar no teste do Google Xamarin , você vai se deparar com esta página e novamente. É muito bom percorrer o que você precisa fazer para ativar seu teste. Tem um monte de coisas lá e você vai. Ok. Você também pode dar uma olhada nos preços no xamarin dot com. Andi Ele foi para baixo um pouco ultimamente porque eu acho que um software é mais maduro e eles têm mais desenvolvedores a bordo. Há mais de uma posição financeira estável. Ok, agora que isso está carregado, você pode ver que você tem três opções. Na verdade, negócios e empresas. E, claro, indie é muito mais barato cerca de US $300 por ano em comparação com o negócio, que é US $1000 por ano. E estes são por plataforma. Então você está pagando eu nós que muito por mês e, em seguida, adicionar mais 25 para Android ou Mac ou outros que você deseja adicionar. Agora, eu diria que a adição Indy é perfeitamente boa. Se você é um desenvolvedor soul porque você provavelmente não vai usar o Visual Studio, a única vez que você vai precisar de integração visual studio é, se você simplesmente gosta de usá-lo. Mas o estúdio Xamarin é um bom I D como é, e você precisará de estúdio visual para se integrar com o Windows phone. Então, se você quiser publicar no Windows Phone usando Zamarripa, você precisa ter pelo menos a licença comercial. Caso contrário, tanto o IOS quanto o Android podem ser publicados usando o Indy. Agora, se você é uma pequena empresa, uh, vale a pena ligar para Amarin e dizer-lhes isso porque eles podem te dar preços especiais . E também, se você é um estudante, você pode obter isso de graça. Se você assinar no reboque. Microsoft Dreams Buck. Então, novamente, basta procurar no Google por isso e você vai encontrá-lo. Uma vez feito a instalação, você simplesmente tem um link para lançar o Xamarin Studio, e vamos embora. Acabei de fechar o instalador enquanto o salmão está carregando e lá vamos nós. Zaman está agora instalado e pronto para o rock and roll. Há algumas coisas à direita aqui onde você pode navegar. Eles são muito soluções para as coisas em In the middle é uma lista de todos os seus posts blawg que eles fazem e estes ar ocasionalmente interessante. Então, quando eles anunciaram uma notícia Amarin, é bom clicar nele e ver o que há de novo. Agora este curso é ensinado em Xamarin quatro. Então, este post top blog aqui é o que eu estou ensinando, e este é o novo lançamento deles. Ele foi lançado em, Eu acredito que dezembro 2015 em. Estou gravando isso em 2016 e vamos correr em, Samarie informa dois pontos. Oh, então você não precisa se preocupar com compatibilidade por um bom ano ou dois ainda eu vi um par de outros cursos lá fora para formulários xamarin que foram escritos caminho de volta em 2014 e aqueles ar ainda preso em um ponto. Oh, então eu apenas estar cansado de alguns dos outros cursos e sempre olhar para fora para os mais novos atualizados 3. Configuração de Xamarin em um PC (Visual Studio): Então vamos começar a instalar Exam Oring em nosso Mac. Vá para Samarinda dot com na primeira página. Se você rolar para baixo, você deve ter um link para baixar Samarie. Vá em frente, clique que ele irá abrir uma nova página, pedir-lhe alguns detalhes. Preencha e baixe gaguejando para OS X. Vá em frente e ligue seu instalador quando ele for baixado e clique duas vezes no ícone. E o instalador do Zaman é muito bom em segurar sua mão, percorrendo todo o processo de instalação. Então primeiro você tem que concordar com alguns pedaços, etc, etc. A Andi. Ele detecta seus vários decaimentos e decaimentos s android. Detective, temos o código X em todo o resto. Ele também instala martelando ponto Mac. Então você quer instalar todos esses produtos? Clique em Continuar. Ele pergunta onde seu sdk está ou onde você gostaria de instalá-lo? Puppet onde quer que ele sugere, e, em seguida, basta clicar em continuar e tudo será instalado. E enquanto isso nas lojas, eu só vou voltar para o meu navegador da Web e apontar que você pode começar um teste de 30 dias gratuitamente fora Samrin Business Edition. Agora, para esses tutoriais, provavelmente é uma boa idéia ter essa adição ou pelo menos a edição de desenvolvedor indie. Então, se você teve mais de dois desenvolvedor dot zaman dot com ou simplesmente pesquisar no teste do Google Xamarin , você vai se deparar com esta página e novamente. É muito bom percorrer o que você precisa fazer para ativar seu teste. Tem um monte de coisas lá e você vai. Ok. Você também pode dar uma olhada nos preços no xamarin dot com. Andi Ele foi para baixo um pouco ultimamente porque eu acho que um software é mais maduro e eles têm mais desenvolvedores a bordo. Há mais de uma posição financeira estável. Ok, agora que isso está carregado, você pode ver que você tem três opções. Na verdade, negócios e empresas. E, claro, indie é muito mais barato cerca de US $300 por ano em comparação com o negócio, que é US $1000 por ano. E estes são por plataforma. Então você está pagando eu nós que muito por mês e, em seguida, adicionar mais 25 para Android ou Mac ou outros que você deseja adicionar. Agora, eu diria que a adição Indy é perfeitamente boa. Se você é um desenvolvedor soul porque você provavelmente não vai usar o Visual Studio, a única vez que você vai precisar de integração visual studio é, se você simplesmente gosta de usá-lo. Mas o estúdio Xamarin é um bom I D como é, e você precisará de estúdio visual para se integrar com o Windows phone. Então, se você quiser publicar no Windows Phone usando Zamarripa, você precisa ter pelo menos a licença comercial. Caso contrário, tanto o IOS quanto o Android podem ser publicados usando o Indy. Agora, se você é uma pequena empresa, uh, vale a pena ligar para Amarin e dizer-lhes isso porque eles podem te dar preços especiais . E também, se você é um estudante, você pode obter isso de graça. Se você assinar no reboque. Microsoft Dreams Buck. Então, novamente, basta procurar no Google por isso e você vai encontrá-lo. Uma vez feito a instalação, você simplesmente tem um link para lançar o Xamarin Studio, e vamos embora. Acabei de fechar o instalador enquanto o salmão está carregando e lá vamos nós. Zaman está agora instalado e pronto para o rock and roll. Há algumas coisas à direita aqui onde você pode navegar. Eles são muito soluções para as coisas em In the middle é uma lista de todos os seus posts blawg que eles fazem e estes ar ocasionalmente interessante. Então, quando eles anunciaram uma notícia Amarin, é bom clicar nele e ver o que há de novo. Agora este curso é ensinado em Xamarin quatro. Então, este post top blog aqui é o que eu estou ensinando, e este é o novo lançamento deles. Ele foi lançado em, Eu acredito que dezembro 2015 em. Estou gravando isso em 2016 e vamos correr em, Samarie informa dois pontos. Oh, então você não precisa se preocupar com compatibilidade por um bom ano ou dois ainda eu vi um par de outros cursos lá fora para formulários xamarin que foram escritos caminho de volta em 2014 e aqueles ar ainda preso em um ponto. Oh, então eu apenas estar cansado de alguns dos outros cursos e sempre olhar para fora para os mais novos atualizados 4. Como conectar o Xamarin em um Mac ao Xamarin em um PC (opcional): Vamos permitir que o nosso Mac e PC Windows para conversar uns com os outros para que o PC Windows possa construir. Eu vou sucos para nós agora examinar. Isso costumava ser feito com o hospedeiro de RI derramado, mas não é mais feito assim. É feito de uma maneira muito melhor, e isso é usar Ssh. Então, a primeira coisa que temos que configurar é o nosso login remoto, e isso está sob compartilhamento. E, em seguida, queremos clicar em login remoto em. E, por enquanto, vamos permitir acesso para todos. Os usuários estavam indo apenas para testar isso em ter todos os usuários elimina problemas com quando limitamos os usuários. Então teste usa primeiro e, em seguida, tente apenas administrador e vá em frente e feche isso. E isso é tudo o que você realmente precisa fazer no Mac para ter acesso a ele em nosso dispositivo Windows . Para conectar nosso Mac, basta clicar em ferramentas, opções e, em seguida, muito abaixo na parte inferior. Nós temos Samrin e eu somos configurações, e tudo o que temos que fazer é clicar em encontrar Zam trazer o agente de volta e lá está ele. Então selecione-o e pressione conectar. Ele vai pedir-lhe o nome de usuário e senha, então eu vou apenas digitar que Concluído it take primeiro, e que deve se conectar. Só vou permitir que na coisa que eu deixei lá muito rápido para você ver foi o gin mono dash s. E essa foi uma exceção de firewall que talvez seja necessário adicionar ao Mac. Então, se você apenas ir para o firewall sobre a segurança e privacidade do seu Mac, é apenas algo para estar ciente de que você pode realmente adicioná-lo a essa lista. Se eu for para as opções de firewall lá, eu tenho uma pergunta mono. Então, se não funcionar para você, simplesmente permita isso. Eu só vou fechar isso. Então, como você pode ver pela minha mudança, eu estou realmente executando isso dentro de uma máquina virtual Windows no meu Mac. Dentro dos paralelos 10 e tudo funciona bem, então você não precisa necessariamente ter uma máquina completamente diferente. Mas é melhor porque você pode correr nativamente. Isso conclui tudo o que você precisa para conectar seu PC ao seu Mac para desenvolvimento IOS 5. A diferença entre o Xamarin Studio no Mac / PC e Visual Studio: vamos discutir a diferença entre o estúdio Xamarin e o estúdio visual para o desenvolvimento de APP. Se você executar o Xamarin Studio em um Mac, então, quando você criar uma nova solução de plataforma cruzada, ele criará I US e Android para você. Ele não criará um projeto do Windows Phone. Se você executar o Xamarin Studio em um PC, você terá a mesma coisa. Será eu nos e Android. Não sei se instala o Windows Phone, mas acho que não instala. Finalmente, se você estiver executando xamarin dentro do Visual Studio, que obviamente está em um PC do que faz todos os três para você, faz I Us Android e Windows Phone. Agora não importa por onde você começa. Digamos que você comece no Mac e não tenha seu projeto do Windows Phone. Você sempre pode abrir o projeto no Visual Studio em um PC e adicionar Windows Phone nesse momento , e você pode aproveitar todas as ferramentas de plataforma cruzada. Não importa quando foi criado. Tenha em mente se você estiver executando em um Mac, obviamente você não pode compilar para Windows Phone, que é a principal razão pela qual ele não cria um projeto Windows Phone. E se você estiver executando o Visual Studio em um PC. Em seguida, você poderá compilar para Android e Windows Phone. Mas eu nós vai precisar de um Mac conectado na mesma rede para ter um cliente de compilação, então você vai precisar de um Mac. Quer se trate de uma máquina virtual ou de um Mac real, é a mesma coisa. Se você estiver executando o Xamarin Studio em um PC, precisará de um Mac em sua rede para executar seus APs I US e construí-los, etc., em termos identidade de experiência de identidadeé o desenvolvimento real. Depende da preferência pessoal. Você pode usar o estúdio Zaman ou o estúdio visual. Ambos são bons no que fazem. Obviamente, se você é um viciado em ponto net, você vai querer usar estúdio visual por causa das características surpreendentes que estão dentro que eu d. Mas em ambas as plataformas, você também tem acesso a novo entrar, e você também obtém acesso à loja Xamarin que permite inserir componentes e coisas em seus projetos. 6. Quando usar formulários Xamarin e quando não usá-los: Vamos falar sobre quando usar um martelo e formas. Geralmente, vamos usar formulários quando temos um aplicativo simples que tem os mesmos elementos gráficos em todas as plataformas ou elementos similares. Um exemplo desses elementos seria um botão em uma exibição de lista ou um switch, algo assim. Então você tem que pensar sobre o seu aplicativo com muito cuidado antes de decidir que tipo de projeto vai ser executado. E se todos os elementos em seu aplicativo são comuns a todas as três plataformas Apple, android e janelas, então você pode ir em frente e usar formulários. Mas tenha em mente que a capacidade de refinar esses elementos é limitada. Quando você usa formas de martelar, ele fica muito melhor, mas ainda é limitado. Digamos que você estava fazendo, por exemplo, um simples que eu não sei. Vamos ver. Ah, aplicativo de troca. Você só tem realmente uma lista de coisas, e você não se importaria tanto em refinar a aparência dela porque é a funcionalidade que é importante para os usuários. Assim, você seria capaz de obter três APS fora quase ao mesmo tempo. Ele leva você a fazer um aplicativo agora, a outra opção quando você abre, Samrin é fazer o clássico xamarin fechar aplicativo de plataforma cruzada. Agora, isso é quando você tem um aplicativo complexo em termos do G A y. o processamento de dados em segundo plano pode ser complexo foi simples. Isso não importa. Ele não tem influência sobre se usar formulários ou a plataforma cruzada clássica. Assim, seu aplicativo complexo aproveitará elementos G Y específicos para cada plataforma. E eu não consigo pensar em nenhum exemplo fora da minha cabeça, provavelmente porque os zambianos fizeram um bom trabalho ao incluí-los todos. Mas haverá momentos em que, por exemplo, você deseja acessar um determinado elemento que só está disponível em I nós. E, nesse caso, você usaria o clássico aplicativo de plataforma cruzada. Então isso é em um nível muito alto, resume as diferenças entre formulários na plataforma cruzada clássica. Agora, obviamente, quando você se desenvolve em formulários, é muito mais rápido, definitivamente. Então você perde algum poder sobre a individualização e quando você se desenvolve em plataformas cruzadas, você obtém esse poder de volta, mas você precisa gastar mais tempo em cada plataforma. Em ambos os casos, teremos uma camada de base de dados e que vai ser independente não eram uma camada de base de dados , mas sim uma camada de dados. Essa é uma descrição melhor. E essa camada de dados vai ser independente fora do GeoEye, seja em formulários ou plataforma cruzada. Então esta vai ser a sua seção de código compartilhado. Em seguida, você terá uma camada de acesso a dados que conecta a camada de dados ao G y do seu aplicativo. Agora, em alguns casos, essa camada de acesso a dados pode depender de coisas específicas nativas de uma plataforma. Depende muito . Então, antes de decidir sobre formulários ou plataforma cruzada Zaman, realmente manchar o seu rap e decidir o que você precisa. Então, se eu apenas tomar um exemplo simples deste aplicativo swap, minha camada de acesso a dados simplesmente acessaria algum tipo de banco de dados on-line e me daria uma lista de objetos que todas as minhas plataformas podem usar. Então isso seria perfeito para um aplicativo de formulários. Se eu estivesse acessando uma lista de coisas que são específicas para um iPhone, então formulários se tornariam problemáticos, e é aí que eu vou para plataforma cruzada. Então, só para você estar ciente de tudo isso, espero que faça sentido. E se precisar ler mais sobre isso. Basta procurar o site do salmão e eles explicam. Basicamente, o que eu acabei de dizer é que se você tem um aplicativo simples, ir com formulários. A última coisa antes de terminarmos Esta palestra é se você é o c d. e você gosta das coisas do jeito que você gosta, então não faça um formulário para cima porque é muito difícil fazê-lo assim. Mas se você é como eu e você só quer obter um produto de teste lá fora, um produto mínimo viável , então pegue formulários, coloque algo para fora e veja se ele pega. 7. Compreender o paradigma do modelo de visualização de modelo (MVVM): Vejamos como os APs são arquitetados Nzama Rin Andi. Na verdade, na língua nativa é que eles empregam usando o modelo View view model ou MVV M para abreviar. A primeira coisa que precisamos saber é que M V V M é um derivado do controlador de visualização modelo M V C. Na NBC leva um modelo, então esta é uma espécie de camada de dados fora do seu aplicativo, e esse modelo atualiza um controlador de visão, e esse controlador informa a visão de que nós, como o usuário realmente vê agora a maneira como ele é encontrado desde que a NBC entrou em cena é que o controlador de visão possui o modelo. Então, uma grande parte da lógica principal do programa é realmente armazenado dentro do controlador de visão. E do ponto de vista da programação, isso não é exatamente ideal para reutilização de código. Então, apenas em termos de um mundo real, exemplo do mundo real, se você tem um banco de dados ou banco de dados Web em sua comunicação com o seu rap, que tem um controlador de visão em I nós ou uma atividade no Android e que é atualizar o fora do seu telefone, então vamos dar uma olhada nesse problema. E esse problema é que a maior parte da lógica é armazenada dentro da exibição, controlador ou atividade. E se quisermos reutilizá-la dentro de uma visão diferente, temos que reescrevê-la. E, claro, isso nunca é o ideal. E tanta inveja. VM foi a solução para isso em alguns aspectos, e M V V M é exatamente como o controlador de visão modelo M. V. C. Exceto que temos um modelo. E, em seguida, inserimos uma camada extra, que é um modelo de visão, e que se comunica com o controlador de visão ou atividade e, em seguida, nos fornece a vista. Agora isso é perfeito para o desenvolvimento de plataformas cruzadas no que Samrin faz é que ele usa uma linguagem de marcação chamada Zamel, e ele é modificá-lo de algumas maneiras para si mesmo. E se você é um desenvolvedor do Windows, saiba que Zamil Nzama Erin não é o mesmo que no Windows. Isso é apenas uma coisa para estar ciente. E, em seguida, com cada arquivo Zamel, você define o layout visual em sua plataforma de um dispositivo ou ah, maneira agnóstica do sistema operacional. Então você define um arquivo para IR San Droid e Windows phone em. Então temos um arquivo de código que fica atrás do arquivo Zamel que fornece a conexão com ele com sua base de código, então eu não fui em profundidade aqui em tudo. Eu só quero que você tenha a idéia por trás dos conceitos das formas de ponto xamarin e chave é o Zamel e o código por trás do Zamel. 8. Como criar um projeto de formulários Xamarin "Hello World": Vamos dar uma olhada em como criar exame ou informa projeto. Abra, gaguejando. Estou rodando isso em um Mac, mas será o mesmo em um PC apenas menos a solução I R. Clique em Nova solução. Andi do lado esquerdo, verá que temos muitas opções. Plataforma cruzada, perguntei, etc. Se eu apenas cliquei através de alguns destes, você pode ver que temos o clássico IOS abside de visão única, uma guia, aplicativo, esse tipo de coisa. O mesmo tipo de coisa para Android. E também podemos criar a partir do Mac. Por enquanto, vamos escolher o aplicativo de plataforma cruzada. E agora aqui temos duas opções. Podemos usar formas de pato Samrin. Bem, podemos usar um único aplicativo de visualização. Um aplicativo de visualização única é realmente apenas o aplicativo nativo de plataforma cruzada, e é a maneira clássica que Zaman fez as coisas. Mas este é o curso sobre Sammer e formulários, então vamos em frente e selecionar os formulários para cima e bater. Em seguida, nós temos que dar-lhe um nome, então vamos chamar este aplicativo um, e nós temos que dado identificação organização, então eu vou apenas colocar empresa lá e assim são identificadores no Android e IOS vai estar aqui com dot company dot app one e isso tem que ser único no mundo do aplicativo e, em seguida, abaixo que queremos segmentar ambas as plataformas e, em seguida, temos algumas opções. Quando criamos nossa solução, vamos criar um projeto de código compartilhado. Agora, você pode começar com uma biblioteca de classes portátil ou você também pode usar uma biblioteca compartilhada . Não há razão para você não ter ambos em seu projeto. A diferença é ah, a biblioteca de classes portátil depende do menor denominador comum. Então, se você declarar algo dentro de uma PCL, ele tem que ser suportado em todas as plataformas que você está mirando em uma biblioteca de galpão. Você pode ter compiladores condicionais lá. Então, quando você vem para compilar para eu nós, você pode ter um bloco separado de código que você olhar em vez de fora. Se você está compilando para o Android, poderíamos olhar para um bloco diferente de código e esses são apenas simples, se mais declarações referentes a qual plataforma você está compilando para agora, vamos usar uma biblioteca de classes portátil também porque Uma PCL é transportável você pode envolvê-lo em uma DLL e você pode entregá-lo a outros desenvolvedores para usar. Você não pode fazer o mesmo com um hit de biblioteca compartilhada em seguida. Ele vai pedir-lhe um nome, uma solução, nome onde colocá-lo, etc. Você pode usar get para controle de versão, mas eu vou desligar isso por enquanto. Você também pode ter insights e testar a nuvem, mas vamos deixá-los por enquanto. E quando você bater, criar Zaman vai correr através e criar os arquivos necessários para você. E na sua solução, você vai ter três diretórios principais, um com seu nome de solução AP um e, em seguida, um cochilo no Doc droid e um ponto I nós. E como você pode imaginar, o dróide Doc pertence ao Android e IOS pertence a nós. E se eu expandir essas três pastas e olharmos para a parte superior sem uma extensão no final. Esta é a biblioteca de classe portátil ou o projeto de código compartilhado que é referenciado por AP um Doc droid e ap um ponto i nós. Então, se você clicar em referências, você pode ver que é referência lá e o mesmo em cima de nós É referenciado que se você clicar com o botão direito do mouse em referências, você também pode editá-las. E se você gosta você pode remover coisas ou adicionar coisas , depende de você. Então, alguns minutos atrás, quando eu disse que você pode realmente ter uma biblioteca de classe portátil e um projeto compartilhado, você viria aqui para AP um você criaria um aqui. Eu não vou fazer isso agora e então deixe-me fechar isso e então dentro do seu médico dróide e eu nós, você criaria uma referência a eles. Ok, Então, se olharmos para dróide ou eu nós e se você não está familiarizado com o mundo APP, eles têm diferentes pontos de entrada no APP em ap um droid ponto. Temos a atividade principal, não é CS. E se eu olhar aqui, eu tenho esta atividade principal vai entrar no que essas declarações são mais tarde, e eu tenho um método aqui chamado em criar, e este é o primeiro 1 que é disparado quando você encerra fogos para cima. Mas aqui temos algum código específico para formulários xamarin, e isso está dizendo que eu quero carregar o aplicativo novo aplicativo e é muito o mesmo se tivéssemos sobre toe I nós em I nós. Se clicarmos em cima delegado, temos o mesmo aqui. Concluído o lançamento neste método é onde começamos a chamar o código principal do nosso aplicativo. E novamente temos nossa inicialização de formulários xamarin no carregamento fora do aplicativo. Se eu clicar no ponto principal CS no projeto IOS, não há nada lá, então vamos ignorar isso por enquanto. Finja que não fiz isso. Ok, então delegado aplicativo e atividade principal ambos pedir formulários de exame para algo e isso é algo é armazenado aqui em cima no aplicativo um algo para fechar. Estes não foram confundidos no meu caminho para clicar duas vezes aplicativo um ponto CS. E aqui vamos nós. Temos este aplicativo de classe que é referenciado aqui e dentro deste aplicativo de classe, estamos criando o que é chamado de página principal. Esta é a raiz do nosso aplicativo, a primeira página que é chamada. E dentro dessa página temos uma nova página de conteúdo e dentro dessa página de conteúdo, temos um layout de pilha e eles empilham layout empilha coisas uma sobre a outra, horizontal ou verticalmente você decide qual. Ele lhe dá algumas opções para posicioná-lo. Então opções verticais você tem opções horizontais para que eu possa ter assim igual opções de layout ponto E eu posso ter centro aqui, ou eu posso tê-lo no final ou no início. Não há direita e esquerda sobre isso, então apenas tenha isso em mente. Então, vou enfiar isto no centro horizontal. Não te esqueças da tua vírgula. E então dentro desse layout de pilha, temos um monte de crianças. Agora, essas crianças são os elementos reais da sua tela. Então seus botões, seus rótulos, seus campos de texto, seus campos de texto de entrada, exibições de lista e coisas assim na próxima palestra estavam realmente indo para executar isso em alguns simuladores para o iPhone e Androide. E nesse eleitoral, também vai cobrir a instalação fora desses simuladores 9. Como configurar simuladores Xamarin iOS e Android e executar "Hello World": Então agora temos um aplicativo básico de formulários xamarin. Vamos executá-lo em um simulador ou em um dispositivo. Agora, se você quiser executar seu aplicativo IOS, você tem que vir aqui para o Diretório Associado, certo? Clique nele e certifique-se de definir um projeto de inicialização está selecionado e, em seguida, no canto superior esquerdo, temos um jogo, uma depuração e um iPhone. Você pode configurá-lo para depurar ou liberar. Nós não vamos nos preocupar com o lançamento por um longo tempo, e então o próximo menu nos dará uma lista de dispositivos. Se não conseguir ver nenhum destes dispositivos, terá de abrir o código X no Mac. E quando isso disparar, dirija-se aos dispositivos de janela e aqui tem uma lista dos seus simuladores. Se você quiser adicionar um, clique no sinal de adição na parte inferior Adicionar simulador, e você pode escolher seu simulador e sua versão IOS ou baixar mais simuladores. Mas eu já tenho o meu. Algo para fechar isso. E se voltarmos para Samrin, você deve então ter uma lista de dispositivos, e quando eu apertar play, isso vai executá-lo no meu simulador já aberto e magicamente, nós temos aquele pedaço de texto que está alinhado ao centro de a nossa tela. Agora não importa se você executar isso em um iPad ou iPad pro. Ele sempre estará alinhado ao centro, então basta bater. Pare! E lá vamos nós. É sempre permitido ao centro, porque o conteúdo que o layout da pilha está no centro do contêiner e seu contêiner é a página de conteúdo, que é toda a tela da Europa. Ok, vamos rodar isso no Android. Para fazer isso clique aplicativo um droid doc, clique com o botão direito e vá para Definir um projeto de inicialização do que esse projeto se tornará negrito, o que significa que no topo mudamos para um menu de depuração android. Agora aqui podemos gerenciar nossos dispositivos Android. Mas antes de fazer isso, queremos chegar ao topo das ferramentas de cliques martelando abrir o gerenciador sdk android e aqui precisamos começar a instalar várias versões do Happy e do Android porque, obviamente, não podemos ter um emulador se não têm uma imagem de sistema para Android. Então eu já tenho 501 instalado e eu deveria ter 403 instalado uma regra geral como um desenvolvedor. E eu estou dizendo isso no início de 2016 é que o seu nível mínimo de meta deve ser aplicativo Android E 15. Se você for abaixo disso, então você pode começar a ter problemas de compatibilidade. E isso realmente vai comprometer suas chances de APS de funcionar bem em dispositivos futuros. Então, a maneira como você define uma versão mínima é você ir até um dróide doc, você clica duas vezes nele, ir para o aplicativo Android, e aqui temos uma versão mínima android em mente definido em 15. E acho que o salmão faz isso automaticamente. Então você define um alvo, então ele vai construir para este alvo. Então eu tenho que ter certeza que eu tenho feliz nível 23 disponível. Então, se eu rolar para cima 22 bebida parece não ter 23. Então eu vou construir isso para 21 que foi Android cinco ou pirulito e clique em OK, Esta versão alvo android significa que ele apenas constrói para isso, mas ele vai correr em versões android superior a isso. Então não se preocupe com isso e clique em OK, Volte para o seu gerenciador sdk rolar até a parte inferior e temos Teoh selecionar nossa biblioteca de suporte Android são repositório de suporte do Google Play Services. Se você vai usar anúncios e a loja e coisas assim, vamos ver o que mais temos aqui. Podemos ter os nossos hacks. , Instalador, isso acelera sua experiência de emulador. Então vamos selecionar isso e eu vou apenas instalar esses pacotes. Deixe-me. É o que fora do Happy 23. Realmente federal. Ok, ainda cinco pacotes. E uma vez que você fizer isso, volte. Deixe-me clicar nisso. Volte para este tutorial e estará pronto para instalar nossos simuladores. Agora, existem algumas opções para o seu simulador Android. O 1º 1 é a opção padrão, que é o simulador normal do Google, que é lento como o inferno. Não baixe isso porque é infernal trabalhar com sua opção para nossos vários serviços de terceiros que funcionam muito bem. Sua terceira opção é usar tamarins próprio jogador android porque eles identificam que o android era tão lento que eles têm que fazer o seu próprio. Então, tal, por exemplo, e player android, e eventualmente, quando minha Internet funciona, eu acho que posso codificar mais rápido do que o Maine Net pode baixar texto finalmente carregado. Então vá em frente e clique nesse link, e ele irá levá-lo para xamarin dot com, Ford barra Android Dash player e, em seguida, baixar isso para o seu OS X ou Windows ou o que quer que seja . E quando isso for feito, volte a este tutorial. Então vamos instalar esse arquivo baixado esperanças. Clique duas vezes nisso. Clique em, Continue Don t. Dutch Duh e instalá-lo. É um programa muito pequeno, e uma vez que é feito a instalação fechá-lo e, em seguida, ligar o player Android e, em seguida , dentro daqui, nós devemos ter algumas imagens stock fora dos dispositivos Google. O nexo é então eu vou apenas criar um nexo. Vamos ver, vamos ter uma fralda 19 nexus quatro somas vai baixar isso e instalá-lo. E uma vez que isso esteja completo, basta apertar o novo dispositivo e ele deve ser criado. Uma vez criado, volte para Samrin, saia e reinicie só para ter certeza de que ele pega nossos simuladores. Então eu só vou fechar esse Android player que vamos e eu vou ligar o estúdio Xamarin novamente. E quando eu faço e eu abri meu projeto, eu deveria ter acesso ao simulador que eu acabei de criar no nosso menu de depuração. Vamos bater o nosso Nexus quatro e jogar, e ele vai construí-lo e, em seguida, iniciar o nosso dispositivo e executá-lo lá e lá nós temos ele. Está rodando no nosso nexus só para risos. Vou me abrir no nosso “eu”. E lá temos sua primeira solução de plataforma cruzada de formulários xamarin carregada em um iPhone e um dispositivo Android. Agora vale a pena dizer que você pode simplesmente conectar um dispositivo Android ao seu Mac ou PC e executar diretamente lá. Não foram necessárias permissões especiais ou certificados para download. Ao contrário da Apple. Muito bem, na palestra subsequente, vamos modificar este ecrã um pouco, e o que vamos fazer é começar a separar algum código para seguir o nosso padrão MVV M. 10. Como alterar nosso layout de tela inicial e elementos: Então temos o nosso. Amarin forma solução. Mas tudo dentro do nosso aplicativo. Uma seção é todo tipo de confusão entre si, especialmente neste aplicativo um ponto CS. Temos algumas declarações de uma página principal da página de conteúdo aqui, e queremos começar a separar essas coisas. Então, em uma palestra anterior, eu falei sobre Sammo, e é exatamente o que vamos fazer aqui. Então, dentro do AP um, porque é o projeto galpão e tudo vai usá-lo. Vá em frente, clique com o botão direito, clique em Adicionar novo arquivo e queremos que o arquivo superior, que é a seção superior em vez, que é formas, e queremos uma página de conteúdo Zamel. Há 22 itens aqui para conteúdo, página e conteúdo. Ver em Zamel nos permite usar linguagem de marcação, enquanto a outra não. É puramente casaco. Você pode fazer das duas maneiras. Quase não há diferença, mas Sam, na minha opinião, é a melhor maneira de fazê-lo. E então nós vamos chamar esta página principal da classe, e quando você bater novo, ele irá adicioná-lo à sua e imediatamente você vai notar que temos uma página principal dot samel na página principal dot samel dot CS. Então um é a marcação, e um é o código real para ficar atrás desse mercado. É quando a marcação é onde nós realmente vamos definir nossos vários elementos. Então, dentro de nossas tags de conteúdo de página de conteúdo, nós realmente vamos soltar em nosso layout de pilha, e então nós vamos dar a isso algumas opções. É o 1º 1 é colocação vertical, e nós vamos dar este centro e expandir, e então nós temos que dar-lhe uma colocação horizontal, e novamente eu vou fazer o centro e expandir. E então o que mais precisamos fazer? Precisamos ter uma orientação porque é uma pilha, então é vertical ou horizontal, e teremos isso como vertical. Eu não sei por que isso não é completar a ordem e então porque é uma pilha de coisas, precisamos ter algum tipo de espaçamento entre ele. Então vamos dizer que o espaçamento é igual a 15 e não há unidades sobre isso ligado. Eu acho que isso deve apenas fazer isso para o layout da pilha. Ele insere automaticamente a etiqueta de fechamento para nós, então basta pressionar enter e isso solta alguns espaços e, em seguida, dentro daqui. Queremos começar a colocar nossos elementos. Então vamos ter o que devemos ter? Vamos ter dois rótulos para que possamos ver isso em ação. É um rótulo, e nós temos que dar algum texto é igual ao rótulo um tão inspirador que não é. E vamos colocar outra gravadora. E novamente, o texto é igual a rotular e fechar tags. E então eu acho que praticamente cobre isso para ir em frente e salvar esse arquivo Zamel e mudar para a sua página principal ponto Zamel dot CS Dentro aqui você vai notar que há apenas um método para inicializar o seu componente, mas este é o lugar onde você armazenar a maioria de seu tipo de métodos de acesso para obter dados de outras classes para que você coloque-os mais aqui. E isso é novamente sentado no paradigma MVV n é que a maioria do nosso código é armazenado aqui, então não precisamos reescrevê-lo em Droid I Us e Windows phone. Nós não vamos fazer nada com ele nesta seção, mas em seções subsequentes vamos usá-lo bastante, então nós criamos um layout. Temos algum código por trás disso. Agora precisamos obter esse layout em nosso aplicativo real. Então este aplicativo um ponto CS é onde temos que encontrar esta página de conteúdo e iniciá-lo. Então o que, Nós vamos fazer isso Simplesmente remova todas essas coisas padrão que Zaman colocou para nós até a página principal. E dizemos que a página principal é igual a um novo e aplicativo um ponto página principal construída para salvar isso. E agora isso deve ser executado com a nossa nova página principal. Então vá em frente e aperte o play. Normalmente, quando estou criando formulários Zaman APS eu tendem a desenvolver para ambas as plataformas, obviamente. Mas eu testar mais em I nós porque é muito mais rápido para usar o simulador i r em um Mac de qualquer maneira . Então lá vamos nós. Nós temos são dois rótulos e eu só vou parar que correr e selecionar meu olho nos como o projeto de inicialização. Seria bom se Zaman deixasse vocês dois iniciarem. Talvez em um futuro seja oração, e eu vou disparar esse e verificar se ele funciona. E lá vamos nós, a primeira coisa que você vai notar é que o iPhone tem um fundo branco e o Android tem um fundo preto. Agora, estes são padrão o que quer que seja definido em todo o sistema nos respectivos sistemas operacionais , então tenha muito cuidado quando você está tipo de especificar suas cores de texto. Sempre selecione a cor do plano de fundo. Dois. Não suponha que você sempre terá um fundo claro ou um fundo escuro. Então, novamente, a regra, como acontece com todo o desenvolvimento de software, realmente é testar, testar e testar novamente, e, em seguida, dar a alguém que não pode usar software e fazer com que eles o testem porque encontrar os insetos para você. Ok, isso praticamente cobre como separar todo o código neste paradigma MVV M e em palestras subsequentes iam ficar um pouco mais profundo com isso e olhar para coisas como listas e abstrair banco de dados afastado classes e esse tipo de coisa 11. Introdução ao Just Fit X 1: Este é apenas um vídeo de introdução muito curto sobre o segundo aplicativo que vamos fazer que vamos chamar APP para e dentro desta mini seção, vamos realmente repetir o que fizemos na última seção. Mas vamos construir sobre isso. Nós vamos fazer algumas coisas extras, provavelmente nos depararemos com um ou dois problemas por causa da natureza de plataforma cruzada das coisas e resolveremos essas coisas à medida que avançamos. Mas antes de começarmos a codificar na próxima palestra, eu vou realmente levá-lo para o design da APP e o lado de marketing dela. E acredite ou não, ele realmente começa tão cedo, e eu vou explicar por que na próxima palestra. 12. Como desenhar nosso nicho de aplicativo: Vamos dar uma olhada no aplicativo que vamos fazer. O que vamos fazer é uma lista única para fazer ou não, menos que sim, mas um único para fazer item. Então vamos fazer um aplicativo que permite que você coloque apenas um item no aplicativo, e essa é a única coisa que você tem que fazer naquele dia. Agora isso é projetado para pessoas que odeiam fazer listas, e há alguns poucos por aí. Comecei odiando fazer listas, mas se eu escrevesse apenas uma coisa, eu descobri que todos os dias eu realmente fazia isso. E agora eu me formei em uma lista maior APS e eu posso fazer 10 tarefas por dia. Mas, por enquanto, vamos fazer uma única coisa a fazer. Aplicativo. O que temos que pensar antes de começar é o marketing fora isso agora, como você pode imaginar, no Android e na Apple, há um 1.000.000.000 para fazer lista APS ou single para fazer APS ou o que quer que seja, Então ser notado é vai ser extremamente difícil, e nós queremos ser notado porque nós vamos colocar publicidade em nosso aplicativo talvez, e nós queremos ser pagos a partir disso no caminho para ser notado no mundo APP é na verdade para piggyback em um meio ou algo popular E o que eu sou Vai te pegar de volta é esse nascimento Shyla? Apenas faça vídeo. E é fantástico para o seu prazer. Vou inserir os minutos completos deste vídeo para você. Agora faça isso. Apenas faça isso. Não deixe que seus sonhos sejam sonhos. Ontem você disse amanhã, então faça isso. Faça seus sonhos se tornarem realidade. Apenas faça isso. Algumas pessoas sonham com sucesso enquanto você acorda e trabalha duro nisso. Nada é impossível. Devias chegar ao ponto em que qualquer outra pessoa se demitiria. E você não vai parar por aí. Não. O que você está esperando? Faça isso. Apenas faça isso. Sim, você pode apenas fazê-lo. Se você está cansado de começar de novo, pare de desistir. Eu não sei quanto a você, mas eu estou animado agora, então nós vamos basear-se em torno do vídeo do YouTube. Então vamos pegar uma nova solução. Xamarin formulários aplicativo e queremos uma biblioteca de classe portátil e precisamos dar-lhe um nome. E eu vou ligar para isso? Basta fazê-lo x um e minha empresa identifica Geek A micro de modo que deve ser único nas lojas APP . Mas vale a pena verificar se você não tem certeza. Então eu vou seguir o nome do projeto. Vamos deixá-lo em apenas fazê-lo X um. Mesmo com a solução e nós vamos apenas bater criar e Samrin vai fazer todo o resto para nós. E agora você deve estar familiarizado com o que essas várias pastas e pacotes de referências etc estão na próxima palestra. Vamos olhar para a criação do lado gráfico do nosso aplicativo. 13. Como criar os elementos gráficos XAML do nosso aplicativo: vamos criar os elementos gráficos do nosso para fora em nossa pasta PCO, clique com o botão direito Adicionar novo arquivo e queremos formulários página de conteúdo Zamel e eu só vou chamar esta página principal e bater novo. E você deve estar familiarizado agora com o Zamel no código por trás do exame Oh, então dentro do nosso conteúdo página ponto conteúdo vamos criar para as partes gráficas reais do nosso aplicativo. Agora a primeira coisa que vamos fazer é, na verdade, antes das tags de conteúdo da página de conteúdo. Nós vamos colocar em algum preenchimento porque nós realmente não queremos que o nosso aplicativo vá até as bordas da tela, exceto em casos especiais de design e a maneira como fazemos o nosso preenchimento é digitando conteúdo página ponto preenchimento e colocar a tag extra lá e, em seguida, Dentro daqui. Nós vamos realmente especificar isso em uma base por plataforma. Então estamos chegando ao ponto em que podemos dentro do Zamel, que é compartilhado em todas as plataformas. Na verdade, podemos definir o preenchimento de forma diferente de acordo com a plataforma em que estamos rodando . E então precisamos de um X. Precisamos de um tipo de argumentos e temos que dar isso oops, uma espessura assim e então temos que defini-lo por plataforma. Então vamos dizer. Para eu nos, Eu gostaria que você tivesse batidas de 2040 20 em 20 e, em seguida, para Android. Vamos ter um mesmo 20 por toda a volta. A razão pela qual é diferente do valor IOS 40 é porque em I nós temos uma barra superior que fica na parte superior da nossa tela, e então vamos colocar no telefone vento. Nós não vamos compilar para telefone de vento, mas eu só vou colocá-lo lá para completude. Então isso é 20 tudo de novo. E então podemos fechar essa etiqueta que vai nos dar umas palmadas decentes. Ok, agora que fizemos isso, precisamos criar um layout de pilha dentro da área de conteúdo. Então, basta digitar layout de pilha e, em seguida, precisamos de algumas opções verticais. Onde vamos colocá-la? Vamos tentar primeiro Phil e expandir, e precisamos do mesmo para opções horizontais. E novamente, Phil e expandir. Eu poderia realmente mudar para o centro em um pouco, e nós precisamos de uma orientação para o layout da pilha, e isso é vertical, e então nós podemos ter um espaçamento entre nossos elementos. Então vamos ter eu não sei 20. Vê o que isso vem com? Feche isso, coloque o próximo Tagen e então eu vou inventar coisas para torná-lo mais legível. Algo assim. Em seguida, dentro deste layout de pilha estavam realmente indo para colocar todos os nossos elementos. Então, como isso é tão simples, tudo o que vamos fazer é ter um rótulo, uma caixa de entrada de texto e um botão. Isso é tudo para este aplicativo. Então vamos fazer o rótulo eo texto fora do nosso rótulo é igual a Vamos ver, eu vou chamá-lo. Apenas faça isso. Ei, vamos e vamos fechar isso. Então precisamos de uma caixa de entrada. Isso é simplesmente chamado de entrada. Então esta é uma caixa de edição de texto ou eu esqueço o que é chamado em todas as plataformas, mas basicamente a caixa que você pode clicar e digitar texto. Temos que dar um nome a esta caixa para que possamos referenciá-la mais tarde, e vamos chamá-la de texto de tarefa. E então, se quisermos, podemos dar-lhe algum texto padrão. Mas não vamos fazer isso. O que vamos fazer é colocar um suporte de lugar. Então, quando isso está vazio, ele nos mostra uma espécie de texto de fundo cinza ou branco claro, nos dizendo o que devemos colocar aqui. Então, em nosso lugar, Holder estava bem no reboque. Tarefa aquele médico. E depois fechamos isso. E finalmente precisamos de um botão. E isso, é claro, precisa de um nome. E vamos chamar este botão salvar. Não importa minha digitação ruim, e isso precisa de um texto para exibir no botão. Vamos chamar isso de “salvar”. E há várias outras coisas que podemos fazer aqui, então vou fazê-las por completo. Então você sabe, você não está habilitado, então você pode acinzentar este botão se desejar. E eu só vou ter está habilitado. Definido como verdadeiro. Então, se você quiser acinzentar um botão porque alguém havia inserido algum texto, ele o definiria como falso até que eles realmente digitassem o texto. E então, finalmente, temos um evento clicado, e isso vai disparar um de seus métodos no código por trás disso. E vamos chamar isso em salvar clicado, e nós não criamos isso ainda, mas isso não importa e, em seguida, feche suas tags. Por isso, basta verificar sempre o seu alinhamento de etiquetas. Temos a nossa pilha. Temos nossa página de conteúdo, temos o preenchimento, etc. OK, digamos que, e eu só vou executá-lo e verificar se os gráficos estão alinhados bem e espera que pareça ser um erro. Então voltarei para o Sam e pararei com isso. E eu sei o que é em muito de uma corrida de esquecido de realmente definir a página principal do aplicativo para o que acabamos de criar. Então, vamos remover o padrão dentro. Basta fazê-lo x um ponto CS e nós vamos apenas ter um novo Basta fazê-lo X um ponto página principal e vamos tentar isso novamente deve maneira. Bem-vindos à nossa primeira era. Diz que não há nenhum método no cofre clicado, então mesmo que não tenhamos tentado chamá-lo, ainda está na era do fogo posto. Então eu vou parar isso, e eu vou apenas colocar um método vazio em nosso código atrás do arquivo. Então, dentro da nossa classe aqui, vamos em frente e acender a nossa pia antes do Wade. O que chamamos de salvamento clicou, eu acredito. E então precisamos de um objeto. Enviar um e cães evento e, em seguida, criar método. E, claro, não precisamos fazer nada aqui. Se quisermos, podemos escrever algo para consolar, mas não vamos fazer por enquanto. Então vamos fazer isso e verificar se isso está feito. O truque para nós. E lá temos. Temos a nossa gravadora. Temos a nossa caixa de entrada de tarefas, e temos um botão de salvar. Não faz nada agora. Ok, eu só vou rodar isso no Android player e realmente ver como ele se parece. Então eu vou parar lá, acertar meu dróide, e vamos fazer um projeto inicial e executá-lo no que temos atualmente em execução, que é isso e aí temos ele. Ok, eu acho que eu realmente gostaria de centrar tudo isso, mas isso é com você. Você não tem que fazer isso. Então, no meu exemplo, eu só vou mudar esse layout de pilha para centralizar e expandir. Então eu só vou ver o que parece eu vou apenas fazê-lo no iPhone em primeiro lugar , porque isso é sempre muito, muito mais rápido para realmente compilar. Certo, aí está no centro. Agora, não parece ótimo no momento, mas eu vou deixar você decidir pular no site do Zaman e procurar as especificações do Zamel e ver como você pode mudar as cores, os fundos, a largura das coisas, etc, etc. Ok, na próxima lição, vamos jogar algum código neste projeto para que nossa tarefa seja salva sempre que clicarmos no botão Salvar. 14. Como escrever o código de aplicativo principal - Usando as preferências de usuário para armazenar dados: Então, antes de começarmos a codificar, precisamos pensar em algo muito importante. E isto é, onde é que colocamos ou armazenamos a nossa única tarefa? Então essa coisa que digitamos aqui, obviamente não podemos armazená-lo apenas na memória pura porque toda vez que reiniciamos o APP, ele desaparecerá. Então, temos algumas opções. Ou podemos fazer upload para a nuvem em algum lugar, ou podemos armazená-lo em um banco de dados. Mas isso parece um exagero para um simples pedaço de texto. Poderíamos armazená-lo dentro da nossa biblioteca portátil, mas isso é bastante complicado de fazer. Não vamos fazer isso. O que vamos fazer é alavancar as configurações em todos os sistemas que temos. Então eu incêndio criminoso, Android e Windows phone, e normalmente você usaria estes para armazenar preferências, mas você pode armazenar uma cadeia de texto lá no primeiro passo para fazer isso é clicar duas vezes em seus pacotes dentro de cada e digite Zamarripa em configurações. E um dos caras que trabalha examinar criou este plug de configurações que permite que você acesse as configurações entre aplicativos para simplesmente adicionar o pacote lá, adicionado dentro de seu projeto droid. Eu realmente gostaria que isso acrescentasse a todos eles ao mesmo tempo. E, claro, queríamos dentro do projeto IOS. Certo, assim que formos, todos estavam prontos para criar algum código. Abra a sua página principal ponto Zamel dot CS E dentro são função clicada insegura. Queremos pegar o texto. Então vamos apenas dizer que via texto é igual ao texto da tarefa. E se você se lembra, esse é o nome que demos aqui no texto passado e então queremos retirar a propriedade text a partir disso, então queremos verificar. Na verdade, há algum texto lá dentro. Então vá em frente e digite. Se não string dot é não ou espaço em branco, então nós realmente vamos salvá-lo. E, claro, se estiver vazio outro espaço em branco, você pode querer ter um outro e, em seguida, aqui, algum tipo de mensagem para usá-lo sobre a caixa vazia. Isso é apenas um bom design de experiência do usuário. Então, se temos o nosso texto e é tudo bom aqui dentro, nós realmente queremos salvar o texto para as preferências do usuário, e nós vamos usar esse plug de configurações que acabamos de ter eu percebi que eu cometi um pequeno erro aqui e neste string não é um espaço em branco. Na verdade, temos que alimentá-lo com a nossa força. Então vamos digitar texto. Aqui vamos nós. E isso deve funcionar. Só vou me certificar de que se constrói e funciona. Nós estamos bem. Então, estamos prontos para salvar esse texto agora O que eu acho lá, o nome dele é James Monta. Magno fez com este pacote é que ele criou uma classe auxiliar aqui. Então, se você entrar em ajudantes e configurações dentro de seu projeto compartilhado, você vai notar que ele criou essa classe estática e dentro daqui, ele permite que você defina e obtenha um tipo padrão de string. E você precisa modificar isso se você tem diferentes tipos de cordas, etc. Mas o que vamos fazer aqui é alterar essa chave de configurações. Então nós vamos apenas ter isso como tarefa e, em seguida, o padrão é apenas vai ser apenas uma string vazia para que nós não obter quaisquer erros de inicialização desagradável, e, em seguida, dentro do nosso código, nós vamos realmente usar este método de configurações gerais que nos permite obter e definir nossas configurações então eu vou apenas deixar que lá em cima por um segundo no caso de seu parece um pouco diferente porque estes plugins fazer atualizar ocasionalmente e você pode obter um bom eu sinto para o que isso realmente é. Ok, eu vou fechar isso dentro da nossa página principal dot samel dot CS Dentro daqui, nós precisamos salvar o texto. E porque nós temos aquele plug-in realmente útil e a ajuda da classe, esta é apenas uma linha simples e que é oh, espaço de nome. E, em seguida, os ajudantes de ponto definições de pontos gerais são iguais ao texto. É tudo o que precisa para salvá-lo. E então, é claro, quando nosso aplicativo é acionado, nós realmente precisamos mudar o texto dentro da caixa. Então eu não tenho ele aberto lá, mas o texto dentro da caixa de entrada. E, claro, gostaríamos de pegar esse texto e colocá-lo dentro dessa caixa. E há algumas maneiras de fazer isso. Podemos ter uma espécie de um monte de classes e métodos que nos dizem por que o valor mudou e ele é acionado muitas vezes evento que realmente altera-lo dentro da caixa de entrada. Mas isso seria um pouco exagerado para este tipo de projeto. Então, tudo o que precisamos fazer é chegar a essa classe de página principal e aqui precisamos escrever nossa tarefa. Texto ponto texto é igual a eu iria apenas fazê-lo dot help é dot settings dot settings general settings que vai passar para o arquivo de configurações e pegar o texto para nós. Então vamos rodar isso no nosso iPhone. E graças a esse bom plug nessas duas linhas deve realmente cuidar de todos os pedaços e peças que precisamos. Então não temos mensagens de texto aqui. Eu vou colocar make website e hit. Salvar. Seria bom se tivéssemos algum tipo de notificação no Save que realmente dissesse que foi salvo. Mas eu vou deixar isso com você para meio que implementar. Então o que? Vou acertar o turno de comando dele duas vezes. Esse é o atalho para o switcher de APP. É Excluir isso, e então eu vou abri-lo de novo, e ele deve retirar essa preferência. E lá temos nosso site make, então em poucos minutos você realmente codificou a rampa geral da camada base. Usando aquele plug-in prático e prático. Vamos adicionar um pouco de delicadeza. E essas são algumas mensagens que permitem que um usuário saiba que ele clicou ou não encerrou texto suficiente. Então isso é criar um novo método. E vamos chamar anular um alerta de show. E então aqui vamos passar a corda, que será Tyto String Message. Andi, acho que vamos deixar assim e fechá-lo. Ok, e então aqui em cima em nossas declarações de “se mais” estavam apenas indo para acender o alerta do show. E assim que salvarmos, queremos dizer que vou usar isso. Talvez digamos sucesso, já que o título e a tarefa salvaram o doutor Doutor. Agora faça isso e feche isso. E, em seguida, se não temos texto dentro da caixa, queremos novamente dizer aos nossos usuários Mostrar alerta, a caixa da era clássica. Nenhuma tarefa para salvar. Não fale e feche isso. E, em seguida, aqui dentro do nosso show alert, nós realmente precisamos do método para exibir nosso alerta, que é simplesmente exibir alerta. E ele pede um título que nós vamos dar-lhe uma mensagem, e então ele precisa de um pouco de texto para o botão conselho. Então isso geralmente está bem, certo? Vamos bater, salvar e ir em frente e executar That And que apenas adiciona um bom pouco de experiência de usuário para o nosso up. Então o uso deles sabe o que realmente está acontecendo com ele. Foi quando eu bati. Salvar tarefa salva. Agora faça isso. Se eu não tenho nenhum texto na caixa e bater salvar era, não jogou para salvar. Certo, isso conclui a construção desta parte do aplicativo. Na próxima palestra, vamos olhar para inserir um pequeno anúncio do Google na parte inferior desta tela para que possamos ser pagos com ele. 15. Como adicionar anúncios do Google Admob a um aplicativo de formulários Xamarin: Vamos colocar alguns anúncios em nosso aplicativo. Vá para o nosso projeto dróide de componentes DoubleClick, e isso nos leva a examinar os hits da loja de componentes. Obtenha mais componentes quando ele é carregado. Eventualmente digite Google play. Tudo bem. Vamos colocar alguns anúncios do Google insider wraps porque queremos ser pagos. E eu puxei para cima o resultado final para rap bem aqui para que você possa ver como esses anúncios vão se parecer. Então vamos ao Xamarin Studio e implementar isso para nós mesmos. A primeira coisa que temos que instalar é os arquivos relevantes ou s decaimentos para realmente implementar esses anúncios, e eles são diferentes para droid e eu nos. Então, primeiro, venha ao Projeto Iose. Clique duas vezes nos componentes e pressione. Obtenha mais componentes. Parece que não tenho ligação à Internet. Boa tentativa. Lá vamos nós e, em seguida, vamos procurar anúncios do Google Mobile e deve senti-los para baixo. De acordo com o projeto que você selecionou atualmente e que o topo é o que queremos e clique em adicionar ao aplicativo e ele irá adicionar todas as referências para você e nós vamos ignorar essas instruções porque eles não são relevantes para nós como usamos examinar formulários. A próxima coisa que temos a acrescentar é algo ao nosso projeto dróide. Se você acessar a loja de componentes, sim, há componentes para fazer anúncios. Mas se você me perguntar, eles são extremamente buggy. Então é muito melhor ir. Fonte do diretor. E eu acho que alguém colocou algumas ligações agradáveis em novos pacotes obter tão DoubleClick. E aqui dentro vamos procurar anúncios para dispositivos móveis do Google ou anúncios de reprodução do Google. Acho que se chama. Na verdade, lá vamos nós. Google Play serviços dash anúncios e, em seguida, clique em Adicionar pacote. Andi, se você abrir sua pasta de pacotes, deveria ter adicionado um monte de outras coisas, como indexação de porão e aplicativos, etc. Certo, agora temos os componentes. Como chamamos exatamente esses anúncios em seus respectivos sistemas? Bem, temos que voltar ao nosso projeto PCL compartilhado Abrir página principal ponto Zamel e, em seguida, dentro aqui na declaração de página de conteúdo, precisamos adicionar outro espaço de nome XML. Então nós digitar controles XML s é igual a C. L R. Dash espaço espaço de nome. E então nós temos que colocar o espaço nome do nosso projeto que é apenas fazê-lo x um semi cólon . E, em seguida, o nome do assembly é igual apenas fazê-lo x um e fechar as aspas. Ok, agora que temos isso, podemos realmente colocar no controle que nos permite ter o anúncio John vindo aqui para layout da minha pilha. E por baixo do botão é onde eu vou colocar isso algo a dizer. Controla semi cólon, adicionar vista mob na caixa de camelo, e então temos que dar-lhe uma largura. Pedido sobre este para um anúncio add mob é 320 e, em seguida, temos que dar-lhe um pedido de altura. E no Mobil, isto é 50 para o anúncio da máfia. Pode ser 90 se você estiver em um tablet, mas não vamos lidar com isso agora. E depois fecha essa etiqueta, certo? É tudo o que precisamos dentro da nossa página principal, Dr. Zamel. Então vamos dizer que dentro da nossa página principal ponto Zamel dot CS, nós só precisamos ter uma declaração de classe para que você possa fazer isso em um arquivo separado. Mas eu só estou fazendo aqui para manter tudo isso compacto e juntos, então vamos ter aula pública, adicionar visão da máfia, e isso corresponde a ouvir essa visão do Almirante. Então Almirante View e isso vai herdar inerente do conteúdo de você abrir nossas chaves e vamos colocar um construtor em. Na verdade, não vai fazer nada e fechá-lo. Então lá vamos nós. Está tudo fechado. Então agora temos isso. A idéia do que estamos fazendo aqui, exame ou informa é que estamos criando uma renderização personalizada. Então a seção Zamel ou a seção PCL, vai para Droid e dois I nós individualmente e dizer, Ei, eu preciso pegar este componente de você. Você pode fornecê-lo? E, em seguida, os projetos individuais Android e eu vamos em frente e fornecê-lo. Então Nzama informa, que é na verdade uma maneira de contornar o fato de que alguns controles são nativos de apenas uma plataforma. Você pode usar renderizadores personalizados para especificar qual controle fornecer. Ok, então vamos fazer isso para eu perguntar primeiro se nós clicar com o botão direito em I on e ir para adicionar novo arquivo. Queremos uma aula vazia e chamaremos isso de algo óbvio. Como adicionar mob, renderizar um e lá está ele. Vamos inserir algumas instruções usando no topo aqui porque há um monte de coisas para realmente passar. Então nós queremos examinar formas de ponto e, em seguida, ele usando samarie em formas ponto plataforma dot i nós e, em seguida, nós temos que ter o projeto compartilhado. Então, usando qual é o nosso nome? Espaço? Eu só esqueci. Aqui vamos nós. Basta fazê-lo x um e, em seguida, não usar esse. Precisamos referenciar nossos anúncios móveis do google dot e, em seguida, porque este é eu nós, precisamos ter um uso para o u I kit, que cuida de nossas opiniões. Certo, agora precisamos de uma referência para a biblioteca portátil da turma. Então vamos digitar renderizadores de exportação de assembly, e isso vai ter um tipo off add mob view no segundo argumento é o alvo, que é um tipo off em renderizadores de mob e fechar nossos colchetes. Ok, não se preocupe com esse bit vermelho por enquanto, porque se você clicar com o botão direito e ir para resolver, você pode adicionar o espaço de nome usando para ele. Ok? Agora precisamos criar o código real que vai em frente e recebe o nosso admirável. Então este aplicativo mais Brenda precisa herdar de um componente especial de formulários xamarin, que é a exibição renderizar e, em seguida, dentro da classe, precisamos de uma string constante e este vai ser o ad mob I D. E eu não vou cobrir isso nesta palestra. Se você quiser obter um nabob, eu simplesmente vou ao Google ad mob na mão deles, segurá-lo durante todo o processo e eles vão te guiar por isso. E no final, você vai sair com uma identificação. identificação Deixe-me apenas encontrar a minha e copiá-la aqui e aqui está. Então precisamos do que é chamado de exibição de banner e vamos chamar essa exibição de anúncio que vai atuar que vai realmente segurar. Vou procurar anúncios no Google. E então precisamos de um booleano para manter o controle fora da exibição na tela para ver se nosso anúncio foi carregado na tela ou não. Então precisamos substituir algo, então vamos passar por proteção, e o que queremos substituir está no elemento alterado. É o tal. Então deixamos nossa base lá para que seja executado e, em seguida, por baixo, precisamos verificar se e ponto novo elemento é não. Então, se ainda não existe, então retorne e então precisamos e se o elemento dot oled for não, então vamos criar nossa banda de vocês. Então vamos entrar, Stan, ela comeu. Dizemos adicionar vista é igual a um novo e queremos uma proibição de você e, em seguida, banir de você quer alguns argumentos? Então, queremos um tamanho primeiro. Isto é muito fácil de fazer. Nós apenas ir adicionar tamanho Cons não e nós vamos ter um banner inteligente no retrato e, em seguida, fechar isso fora e, em seguida, isso precisa de alguns argumentos. Então o primeiro 1 que ele precisa é o bloco de anúncios I D. que temos vindo aqui com o nosso add mais de i d. Então ele precisa de um controlador de visão raiz. Então este é o controlador de visualização que controla a pilha de visualizações que você está vendo como o usuário IOS e que vem de você. Eu aplicativo aplicativo aplicativo aplicativo compartilhado. Queremos selecionar as janelas com um índice de não e, em seguida, queremos o controlador de visão de rota fora disso e eles iriam apenas fechar isso fora e isso nos dá nossa exibição de anúncio. Então precisamos de um evento. Então, vamos dizer quando a exibição do anúncio é recebida, adicione recebida mais igual, e nós apenas colocar algum centro e cães lá dentro. Então, uma vez que você recebê-lo, se a exibição na tela é falsa, então vamos colocar um ponto de exclamação partes na frente dele, então eu gostaria que você adicionasse esta sub-exibição. Deixe-me dizer que este ponto adicione um pouco de vista e então nós vamos dizer, pegue nossa exibição de anúncio e coloque lá, ok? E então, como recebemos um anúncio, queremos definir nossa exibição na tela como verdadeira. Então já está funcionando. E então, uma vez que fizemos isso, nós realmente disparamos o pedido de anúncio. Então nós fazemos isso dizendo solicitação é igual a ponto de solicitação e, em seguida, você quer obter a solicitação padrão assim, e então nós realmente tem que carregá-lo. Então adicione view dot load request e passá-lo nosso pedido real que acabamos de criar. E então precisamos dar a ele mais um método base de controle nativo conjunto de pontos. Aquela vista, certo? Isso é muita digitação, mas isso deve nos cobrir. Então eu vou tocar no Play, e eu vou verificar se isso realmente funciona dentro do nosso simulador. Lá vamos nós. Temos um pequeno problema, então vou mudar o remetente. Cães. Lá vamos nós. Isso corresponde agora, então isso deve compilar. Se tivéssemos aqui, ele vai removê-lo da nossa vista. Carregue o novo. E se tivermos alguma sorte, o que parece não ter no momento, lá vamos nós. Ele apareceu com ainda. Isso é ótimo. Vamos começar e fazer muito o mesmo para a versão android. Então vá para o projeto Android, defina-o como arranque e depois vamos adicionar um novo arquivo. E novamente, vamos chamar esse renderizadores de anúncios mob, e então precisamos ter nossa referência de montagem. Então renderizadores de exportação de montagem, e precisamos de um tipo off anúncio se você entrar, digite off é muito semelhante à versão IOS em Mob Renderers, e então nós apenas fechá-los fora e, em seguida, eu vou apenas clicar com o botão direito, resolver e consertar todas essas coisas. Aqui vamos nós. E agora a Almirante Brenda Breath, é claro, precisa herdar da renderização da vista. E isso tem uma vista do tipo auf ad mob. Vamos lá, e então ele quer Android dot gms dot anúncios ponto ponto e se você quiser. Então Cam vai clicar com o botão direito do mouse em poucos renderizar e resolver essa declaração. Ok, agora estamos prontos para disparar dentro da nossa turma. Então, é claro que queremos anular novamente. Então vamos substituir o nosso elemento on alterado. Vamos deixar a nossa classe base lá e dizemos, Se o controle é não, então queremos fazer algo Então nós criamos o nosso de longe anúncio é igual a um novo e queremos ver anúncios forma ponto contexto e é apenas clicar com o botão direito do mouse nesta exibição de anúncio resolver usando isso, e então temos que dar um tamanho. Então adicionar ponto adicionar tamanho é igual a adicionar tamanho ponto e nós apenas dar a este um banner plano e, em seguida, precisamos dos nossos anúncios ponto unidade de anúncio I D é igual a, e eu vou apenas colar o meu dentro. Lá vamos nós. Então temos que fazer nossos pedidos do nosso pedido. Builder é igual a um novo construtor escuro solicitação de anúncio e, em seguida, temos que carregar nossos anúncios. Então adicione o anúncio de carga ponto e re passá-lo nosso pedido construtor ponto construir. E então nós definimos nossos controles nativos, como fizemos antes em I nós para o anúncio, e isso deve praticamente cobri-lo. Então eu vou tocar play, e quando isso constrói virá para o simulador e nós estamos apenas esperando o anúncio para carregar esperançosamente em carga. Eu não quero ser o cara que faz este tutorial e depois não funciona de verdade. Aqui vamos nós. Então nós temos nosso anúncio que está sendo passado por agora, uma última coisa que eu diria a vocês é dentro de seus métodos de anúncio recebidos. Você também pode realmente ter um ponto de exibição de anúncio em ou receber métodos com falha. E lá dentro você pode enviar uma mensagem para o console apenas para dizer que você não recebeu um anúncio, mas está funcionando. Isso é importante saber. Ok, isso conclui esta pequena seção sobre a criação de um basta fazê-lo vezes um aplicativo. Espero que tenha gostado, e tenha algum valor disso. E vamos passar para algo um pouco mais complicado. 16. Introdução ao Basta fazê-lo X 10: Vamos arar com a próxima seção. Na última seção, criamos um aplicativo de plataforma cruzada que nos permitiu ter um único item de lista para fazer nesta seção. Nós vamos estender esse conceito então, em vez de apenas fazê-lo vezes um, nós vamos ter apenas fazê-lo vezes 10. E isso significa que precisamos criar uma exibição de lista ou uma exibição de tabela em nossas plataformas. Junto com isso, eu também vou mergulhar um pouco mais na linguagem de marcação Zamel, e nós também vamos aprender como unir as coisas e permitir que elas mudem sempre que uma variável mudar em nosso código. Então, vamos começar. Crie uma nova solução no xamarin studio, e você já deve estar acostumado com isso agora. Queremos examinar o aplicativo de formulários de ponto, clique em. Em seguida, vamos dar a isto um nome distinto. Então só para dizer, Basta fazê-lo x 10 um vai realmente colocar isso sem um Número X 10 e nós vamos usar uma biblioteca de classe portátil. Ele próximo nome do projeto, solução, nome ou bom e vamos bater criar uma vez que é tudo criado na próxima palestra. Nós realmente vamos olhar para projetar nosso aplicativo e realmente comercializá-lo, porque, sim, ele realmente começa tão cedo 17. Basta fazer o design de aplicativos X 10 e primeira página XAML: Agora que temos um projeto básico configurado, vamos olhar para o design dele. Então, como você está familiarizado com, se abrirmos nosso Shed PCL e vamos para It's Root diretório, clique com o botão direito e vamos clicar em adicionar, queremos um novo arquivo, e então queremos um arquivo de formulários e um ponto de página de conteúdo Zamel e vamos chamar esta página principal e bater novo e como de costume, que cria exemplo, arquivo de marcação e um código por trás do arquivo. Então, no arquivo do mercado Zamel, temos algumas coisas que temos que fazer. Vou colocar isto nas próximas linhas. Você pode vê-los mais facilmente no vídeo, e a primeira coisa que temos que fazer em nossa página principal é que temos que dar um título, claro, então título é igual a apenas fazê-lo x 10 e chegamos ao nosso conteúdo. Andi, como precisamos de 10 itens neste aplicativo para fazer, precisamos criar uma exibição de lista ou uma exibição de tabela, como é chamado em I nós. Então vamos em frente e fazer esse tipo de exibição de lista de colchetes abertos, e então precisamos de um nome para ele, e vamos apenas chamar essa exibição de lista de forma bastante simples. E então o que precisamos é de um item selecionado evento, e isso vai disparar um evento que está contido no código por trás disso. Sempre que um item na exibição de lista é realmente clicado, então vamos chamar isso no item selecionado, e então isso é opcional. Mas podemos dar-lhe uma altura de linha, e porque só temos 10 linhas, não queremos apertá-las. Então ele só preenche metade da tela para que possamos ser generosos com nossa altura de linha em, digamos, 120 para isso e, em seguida, fechar nosso suporte e fechar a etiqueta e, em seguida, criar algum espaço dentro dela . Essa é a lista básica carregada. Agora precisamos de um modelo para isso. Então, digitamos modelos de item de ponto de vista de lista ou modelo. Desculpe. Feche os colchetes e feche as tags. Vou inventar isto para que seja mais fácil de ler. Então precisamos de um modelo de dados para ir com esta lista. Essa é a parte de cima. Feche as tags como de costume e, em seguida, cada lista tem um monte de células ou rosa que vemos sempre que estamos rolando. Então isso é chamado de examinar forma uma célula de visão como essa. Deixe-me apenas amassar aqueles também e salvá-lo. Agora, dentro da célula de visão, precisamos de todos os elementos que precisarmos. Então precisamos de algumas caixas de texto, precisamos talvez de uma imagem de fundo. E é aqui que colocamos tudo. E há algumas maneiras de durante os layouts dentro. Essa exibição é vendida, a primeira delas é um layout absoluto, e a segunda é um layout relativo. Nós vamos usar os dois aqui para que você possa aprendê-los. Então digite colchetes abertos absolutamente fora. E então temos que dar a isso uma propriedade fora é cortada, abunda igual à verdade. E isso significa que se tivermos uma imagem que é muito grande para a venda, se ela sair da cela, se não tivermos isso definido como verdadeiro, então ela aparecerá abaixo da célula, e não queremos que isso aconteça. Queríamos cortar o tamanho da cela ou da estrada. Então precisamos ter alguns limites para este layout absoluto, e fazemos isso dizendo layout absoluto. Não sei soletrar layout de ponto de hoje. Limites é igual a uma vírgula, uma vírgula , uma vírgula , uma vírgula, uma vírgula vírgula, uma vírgula Assim, os primeiros 2 valores são a posição. Se eu der uma posição fora 20.5, iria para metade do caminho através da tela, mas nós queremos que isso para maximizar tudo. Então precisamos de algumas bandeiras de layout. E não se preocupe com isso por enquanto, Dr. Flags. Oh, desculpe ponto pode sair bandeiras é igual a. Vou falar disso um pouco mais tarde. E então, é claro, queremos fechar nossa tag de layout absoluto e soltar isso em alguns níveis. Ok, agora temos um layout pronto para ir. Vamos colocar em alguns elementos reais, e o primeiro 1 que precisamos é uma imagem de fundo agradável. Então vamos ter imagem e examinar formulários. É muito simples de colocar isso. Nós dizemos que a fonte é igual a, e então eu só vou chamar esse BG dot jpeg no que formas de salmão faz é que ele vai para o projeto dróide e olha para dentro. Recurso é e problema, e ele vai para o projeto IOS e olha para dentro. O recurso é assim que queremos soltar essa imagem nessas duas pastas, e faremos isso em um minuto quando eu terminar de digitar ele. Então, para esta imagem, precisamos de uma proporção, e queremos que isso preencha. Eu o conteria, e então queremos ter uma opacidade. E isso só significa como ver através é isso? E o que vamos fazer aqui é apresentar-lhes o conceito vinculativo. Então, se você abrir chaves e digitar encadernação com um B maiúsculo e então eu vou dizer Alfa fechar chaves, esta ligação é uma palavra-chave que formas de salmão olha e diz, Ok, eu vou pegar o próximo palavra, que é Alfa como a propriedade que eu vou atribuir a este um passity. Então isso vai começar a nos apresentar às variáveis que estão no código por trás do Zamel . E uma vez que você fizer isso, vamos cortar e fechá-lo. Vamos adicionar que o dedo do pé imagem são pastas, então venha para o seu projeto android ponto desenhar touro clique direito. Adicionar arquivos. Veja se consigo lembrar onde coloquei isso. Eu acho que é no meu iCloud Samir informa Curso. Lá vamos nós. BG esquivar um porco e copiá-lo e, em seguida, fazer o mesmo com recurso está em arquivos BG Dodge um porco . Claro, vou incluir isso na seção de recursos desta palestra, senhor. Do lado direito. Se você está assistindo você. Para mim, clique no recurso é Tab. Você também pode ter essas imagens armazenadas em seu PCL, mas é um pouco mais complicado, e eu aconselho apenas para armazená-las nos projetos dróides e IOS. Ok, vamos seguir em frente com o resto do nosso layout. Então a próxima coisa que temos que criar é algum texto porque é lista de fazer é lixo sem texto. E para fazer isso, vamos ter um layout de pilha, que é relativamente fora. Vamos colocar um pouco de estofamento nele. Igual e isso vai do lado esquerdo, superior direito inferior. Então podemos dizer 10 comum 10 comum zero vírgula Zahra. E então precisamos de algumas opções horizontais para isso, e é exatamente onde vamos colocá-la. E queremos colocá-lo no início, que é começar e expandir, e precisamos de uma orientação para que ele saiba como empilhar as coisas. E isso vai ser apenas jogadas verticais fora dos suportes e, em seguida, deixou cair essa etiqueta para baixo . Agora estamos prontos para colocar nossos elementos básicos em, e isso é um rótulo com algum texto igual a dois. E novamente aqui dentro, nós vamos amarrar alguma coisa. Então, para fazer isso, dizemos título Binding, ele vai procurar a variável título e queremos alinhar isso nos Emirados Árabes Unidos. Então nós vamos colocar isso no centro para que ele pegue qualquer texto que está lá e colocá-lo no centro fora da caixa. E então precisamos esquecidos iguais e vamos e então precisamos de algumas opções horizontais e queremos colocar isso no início do contêiner. Vamos dar-lhe algumas coisas agradáveis. Vamos ter um tamanho de fonte igual a médio, e precisamos de uma cor de texto igual a branco porque o fundo é na verdade um verde escuro, modo que se encaixa bem e fechá-lo. Precisamos de um último rótulo, que é o conteúdo real do nosso item para fazer para que possamos dizer que o texto do rótulo é igual a outro conteúdo vinculativo. E vamos ter alguns alinhamentos Y sobre isso, que é centro também. Vamos ter um tamanho de fonte e porque isso vai ser mais texto do que o acima, vamos fazer o menor. E, claro, queremos que nossa cor novamente seja branca. Então é legível e depois fecha isso, certo? Isso completa o layout do nosso aplicativo. Vamos atribuí-lo à página AP bane. Então vamos abrir. Basta fazê-lo x 10 ponto CS e dentro aqui remover todo este código boilerplate disse que a página principal sobre este e, em seguida, precisamos de uma nova página principal em. Antes, teríamos apenas dito, Eu gostaria que você dissesse nova página principal. Mas desta vez não temos nenhuma navegação neste aplicativo, e isso significa que primeiro temos que definir esta página como uma página de navegação, então isso é muito importante. Caso contrário, suas navegações não funcionarão no futuro, abra nossos colchetes e pede-nos uma rota de página. Então esta vai ser uma nova página principal e, em seguida, colocá-los em. Precisamos de mais um suporte? Sim, nós temos. E então podemos dar-lhe algumas propriedades. Então, dentro das chaves encaracoladas enfraquecem direito. Algumas coisas aqui. O primeiro 1 é que queremos ter a cor do texto fora da barra superior. Então dizemos que a cor do texto da barra é igual ou melhor, é igual à cor do dardo branco. E então precisamos da cor de fundo da barra, e vamos definir isso para aproximadamente a mesma cor verde que temos em nossas imagens de fundo . E para fazer isso, dizemos ponto de cor de hexágono. E isso nos permite colocar em uma cadeia de Heck, que, se você tiver feito qualquer programação na Web, você saberá o que é isso. E queremos um valor de 63 a d 72 para isso. Ok, agora vamos acendê-lo e ver como é isso no nosso simulador. Se parecer bom, podemos continuar e não parece. Ele diz que não há nenhum método desligado em itens selecionados, então ele está reclamando que nós realmente não instalamos esse método. E se você se lembra, estava aqui no item selecionado, então vamos fazer isso agora. Os cantores estavam aqui. Vamos para a página principal ponto Zamel e, em seguida, aqui dentro nós vamos colocar nosso método em e vamos começar com um público e nós vamos precisar fazer isso uma pia. Mas veremos isso mais tarde. Evite no item selecionado, e então precisamos de um objeto para ir com que ascender e, em seguida, precisamos item selecionado alterado evento são ovos. É um “E “cheio de boca e essa é a planta para isso. Então, agora quando eu apertei play, ele não deve reclamar que nós não temos este método e lá nós temos ele em se você vai notar que nós realmente não temos nenhuma imagem aqui, mesmo que nós especificamos, e isso é porque nós ainda não atribuiu nenhuma venda ou dados a ele. Então, isso é bom. Mas você vai notar. Na barra superior temos este fundo verde e o texto branco, que é perfeito. É exatamente o que precisamos 18. O que é um banco de dados SQLite e por que usá-lo?: antes de continuar com a codificação do nosso aplicativo, precisamos discutir o que um banco de dados e por que nós realmente queremos usar um android e eu ambos nós vêm com um suporte de banco de dados sq light nativo. E em quase todos os aplicativos, sem exceção que você vai criar, você vai ter que armazenar dados. E na maioria dos casos, esses dados não são apenas de um tipo. Há muitos tipos de dados, então você pode ter esses blocos retangulares de dados. Você pode ter circulares e você pode ter vários outros tipos. Agora seria muito difícil armazená-los em, digamos, digamos, um arquivo de texto, por exemplo, porque você teria que converter tudo duas strings e, em seguida, armazená-lo fora. É isso e quando você o pegou de volta, você teria que converter de volta para números, etc. Então a solução para isso é um banco de dados. E se você pensar fora da grande base azul como o banco de dados, o que ele pode fazer, é interpretar ou todos esses bits de dados para você neste tipo de imagens de strings nativas, esse tipo de coisa e bancos de dados também lhe dão muito poder sobre como você acessar essas coisas para que você possa pedir um banco de dados. Me dê essa lista de coisas com todas essas variáveis diferentes, e eu quero que você ordene de uma certa maneira. Então, por exemplo, ordene-o de uma forma que ah coloca. Por data em que foi inserido ou pelo tamanho da string ou pelo nome. Há muitas e muitas maneiras de cortar os dados para escalar bancos de dados são absolutamente essenciais para a APS. E se você pensar em escalar bancos de dados como a conexão de dados vital entre ele e o aplicativo real no telefone, você será definido. E uma vez que você tenha escrito uma classe de banco de dados escalar decente em vários métodos, você pode simplesmente copiar e colar que na verificação de projetos futuros. Funciona. Mas uma vez que você tem sua classe decente indo, você nunca vai realmente ter que reescrevê-la. 19. Como instalar um componente Nuget para lidar com operações de banco de dados: Vamos usar um componente de acesso do dedo do pé. O banco de dados está em nossos dispositivos. Poderíamos escrever o código do zero, mas não há razão para isso porque há tantos componentes lá fora que podemos alavancar para reduzir nosso tempo de desenvolvimento. Agora, o componente que vamos usar é armazenado no novo get. Então, se você clicar duas vezes em pacotes em seu projeto compartilhado ou seu PCL e, em seguida, na caixa de pesquisa procurar por luzes quadradas Net PCL, isso deve vir acima com o que estamos atrás. E se olharmos para aqui, este é o que queremos. Queremos que o i d seja Escalate Dash Net Dash PCL, e menciona especificamente Zamarripa no topo lá. Então vamos adicionar esse pacote ao projeto compartilhado. E queremos adicionar o mesmo pacote ao projeto droid, então ele deve estar no topo da sua lista. Agora clique em adicionar pacote e queremos fazê-lo em I nós. E lá vamos nós. E então dê a ele meio minuto para realmente instalá-los. E na próxima palestra, bem, bem, na verdade olhar para implementar este pacote e usá-lo para acessar bancos de dados 20. Código de acesso ao banco de dados - Como obter uma conexão de banco de dados SQLite entre plataforma cruzada: A primeira coisa que temos que fazer para acessar nossas bases de dados de forma cruzada é declarar uma interface. Então é isso mesmo. Clique na PCL de Galpão. Clique. Adicionar novo arquivo. Queremos uma aula vazia geral e vamos chamar isso. I s Q L luz e pressione Enter e, em seguida, queremos mudar esta classe para uma interface. Então, uma interface. Peço-lhe uma luz e, em seguida, dentro aqui, vamos nos livrar deste construtor e queremos Primeiro de tudo, venha até o topo e vamos inserir uma luz quadrada usando porque precisamos disso. Então, aqui embaixo, comece a digitar conexão de luz quadrada, obtenha conexão. E a razão pela qual precisamos dessa interface é porque os bancos de dados são armazenados em diferentes locais no Android e eu nos. Então, esta interface nos permite falar com os projetos individuais IOS android e realmente obter uma conexão com o banco de dados. Uma vez que temos essa conexão, então realmente colocar as coisas no banco de dados pode ser feito em um projeto compartilhado tipo de maneira porque o código seria o mesmo. Vamos salvar isso, Então, para ir junto com isso, vamos primeiro inserir a conexão de banco de dados dentro do nosso projeto Android. Então venha para o Android, certo? Clique nele clique em adicionar novo arquivo e novamente queremos uma classe vazia e vamos chamar isso de luz quadrada e, em seguida, sublinhar android e aperte Enter e ele é criado para nós. Agora vamos deixar isso como uma aula, mas no topo precisamos adicionar algumas reflexões. Então primeiro precisamos adicionar o sistema dot io porque vamos estar acessando um arquivo. Então precisamos acessar a saída de entrada. E então, é claro, temos um usando Samura espera formas xamarin ponto, e isso é o que precisamos. Agora, o que precisamos aqui é de algum tipo de declaração que nos diga que isso é uma dependência outra coisa que existe em nosso PCL. E a maneira como fazemos isso é digitando montagem dentro de colchetes. Esta é a dependência semi Karlan que deve ser uma dependência D maiúscula. E esta dependência tem um tipo off e, em seguida, entre colchetes Ah, queremos apenas fazê-lo X 10 dardos droid ponto quadrado sublinhar android e, em seguida, fechar todos os seus suportes e certifique-se de que eles estão corretos. Ok, então uma vez que você fez isso, vamos descer para a nossa classe e sob andróide de luz quadrada, nós estamos realmente definir uma região. Então, mas um hash tag em e região eu peço luz e queremos dizer que esta é uma implementação e, em seguida, aqui nós vamos realmente escrever o código que nos permite obter essa conexão. Então, esperanças de conexão de luz Sq, conexão de luz sq. E esta vai ser a conexão get que o nosso peço-lhe luz realmente referenciado no projeto compartilhado. Então ele vai chegar ao Android, encontrar isso, e ele vai descer aqui e realmente conseguir a conexão para nós. Então aqui precisamos de um arquivo VAR. Nome sobre isso vai ser base de dados dot db três como a extensão e, em seguida, precisamos de um caminho de documentos VAR . E este é o caminho de documentos internos para o nosso aplicativo no caminho que obtemos. Isso é pelo ambiente ponto get caminho da pasta e queremos ambiente ponto pasta especial ponto pessoal. Então temos muitas, muitas opções aqui, mas queremos manter esse segredo de outros APS. Então, doc pasta especial, roupas pessoais, alguns colchetes, então precisamos criar o caminho fora do caminho documentos no nome do arquivo juntos. Então nós salvamos nosso caminho é igual a ponto caminho combinado, e então nós temos que passá-lo para caminhos. Então, é claro, o caminho dos documentos e o nome do arquivo no que isso vai fazer é realmente misturá-los e nos dar um caminho para o banco de dados. E então temos que abrir uma conexão. Até agora, conexão é igual a uma nova luz quadrada esperanças. Pergunte a você luz ponto quadrado conexão luz e isso nos pede para um caminho que acabamos de criar e armazenar temporizadores ticks. Vamos ter isso como verdadeiro e fechá-lo. E finalmente, temos que devolver essa conexão. Então nós queremos retornar a conexão porque aqui em nossa declaração pública, nós dissemos que vamos passar algo fora deste tipo e escalar a conexão e, em seguida abaixo aqui, nós vamos fechar esta região, então nós dizemos região, e que resume a totalidade fora da parte android acessando o banco de dados sq light. Vamos fazer o mesmo em I nós para descer para Iose Project clique direito. Adicionar um novo arquivo e queremos sublinhar luz sq I nós e tomar nota das capitalizações lá. Hit, Enter e você ficará muito feliz em saber que isso é extremamente semelhante à versão android. Então precisamos de alguns usando nosso sistema dot io e usando formas de ponto Samrin. E então precisamos da nossa decoração de montagem. Então montagem E esta é uma dependência que, claro, tem um tipo off abrir os colchetes Basta fazê-lo x 10 pontos e nós queremos que eu perguntei, ele vai vir e olhar para este nome espaço ponto quadrado sublinhado, eu perguntei, Fechem seus suportes e isso faz isso. E, em seguida, aqui nós queremos que este dedo classe realmente herde de I sq light Deixe-me apenas verificar. Fizemos isso no Android e não sabíamos que tinha esquecido algo. Peço-lhe luz, ele iria. Então aqui estamos no olho nós um na íris um B novamente quer passar por este construtor e criar uma região e criar alguns s algum código de acesso. Então o que podemos fazer na verdade é copiar o código andróide direto para aqui para que eu possa colocá-lo em uma cópia pressionada em um espaço vazio que não copiou nada. Comando. Veja, largue isso. Lá vamos nós. Mais uma vez, temos a nossa ligação. Temos um nome de arquivo, e isso vai ser o mesmo de antes. E aqui novamente, este é o mesmo porque ele vai e encontra a pasta pessoal para este aplicativo em I nós. E então isso vai ser um pouco diferente. Na verdade, antes daqui, precisamos ter um caminho de biblioteca. Então, sob o caminho de documentos, vamos ter o nosso caminho de biblioteca é igual ao caminho ponto combinado, e precisamos abrir o caminho de documentos e nós realmente precisamos adicionar dois pontos sobre isso está relacionado ao sistema de arquivos que está em operação em I nós. Não se preocupe com isso agora, mas saiba que precisamos disso para isso. E, em seguida, queremos abrir uma pasta de biblioteca e fechar isso fora e, em seguida, na próxima linha sob caminho em vez de documentos caminho, nós realmente queremos caminho de biblioteca. E então tudo é o mesmo de antes. Criamos uma conexão e retornamos essa conexão. Eu só vou rolar para cima e eu não tenho problema aqui. Diz que temos um problema. Vamos ver o que é luz quadrada. Ah, isso é porque aqui eu preciso capitalizar Este eu cometi um pequeno erro. Tens de ter cuidado com isto. Quando sua programação é essa capitalização realmente importa. Está bem. Agora, apenas para recapitular dentro do nosso projeto compartilhado no topo aqui, nós criamos em sq light. E isto diz que isto é uma interface. Eu quero que você vá para os projetos Android e IOS e Windows Phone, se você tiver. E eu quero que você obtenha conexão para maravilhas aqui encontra essa dependência e agarra a conexão para nós dois para Android e eu nós. 21. Código de acesso ao banco de dados - Como inserir, excluir e buscar itens: Na última palestra, criamos uma conexão com nosso banco de dados ou uma interface. Então nós tínhamos isso em nosso projeto compartilhado e nós olhamos para Android e IOS e temos a conexão com o banco de dados . Então eu ia fechar isto sobre o que temos. Dois, ótimo. Agora é código para acessar nosso banco de dados para inserir coisas, excluir coisas e obter uma lista de coisas que geralmente temos lá dentro. código para acessar nosso banco de dados para inserir coisas, Então, sob apenas fazê-lo x 10 vamos clicar com o botão direito e adicionar um novo arquivo. Queremos uma classe vazia e vamos chamar este banco de dados agora. Esta classe vai manter todo o código para acessar o banco de dados. Então, para fazer isso, precisamos de algumas declarações usando. Claro, vamos usar a luz quadrada. Vamos estar usando formulários ZAM Marine será realmente usando coleções de pontos do sistema genérico porque vamos precisar de listas e usando o link de ponto do sistema para fazer algumas conversões extravagantes e várias outras coisas com link, porque é realmente útil. Ok, aqui dentro da nossa turma, a primeira coisa que precisamos é de uma variável de nível de classe, e isso vai ser privado. Não é nada mais pode acessá-lo. Conexão de luz quadrada e, em seguida, digite conexão sublinhado. O sublinhado não tem relevância é apenas parte do nome da variável dentro do banco de dados, que é o nosso Isar inicial. Nós temos que criar essa conexão para sublinhar conexão é igual a ponto de serviço dependência get e, em seguida, queremos um tipo de i sq light dot get conexão. Então o código que escrevemos na última palestra está entrando em jogo aqui para nos permitir buscar essa conexão. Se tentarmos acessar um banco de dados em uma tabela nesse banco de dados e ele não existir, vamos ter um problema. A maneira de contornar isso com bancos de dados SQL SQL é realmente criar a tabela cada vez que você acessá-la. Ele só criará a tabela se ela não existir. Então, se você bater, criar tabela e você já tem dados lá, nada será feito. Nada será alterado e queremos criar uma tabela, e esta tabela vai ser o nosso item de lista para fazer, e isso está ficando vermelho porque nós realmente não criamos ainda, mas nós vamos obtê-los. Então precisamos de um método toe, realmente obter o para fazer itens Então vamos dizer público e queremos um retorno lista a partir deste e novamente. Queremos que faça item de lista e queremos chamar isso de começar a fazer itens e criar Oh, método. E então isso é simplesmente uma linha de código e vamos retornar de T na tabela de pontos de conexão sublinhado E queremos verificar esta tabela, algo para copiar esta palavra que e queremos selecionar esses itens e queremos lançá-los para uma lista para listar. Então o que isso faz com que todos nós façam itens desta conexão nesta mesa? Então, é claro, precisamos realmente adicionar um item para fazer. Então vamos ter um vazio público porque nós vamos devolver nada disso para fazer o item. E este será um tipo off para fazer um item de lista, e este código é bastante simples. Dizemos inserção de ponto de conexão e passamos o item e, em seguida, apenas por conveniência. Se tivermos um monte de coisas que queremos adicionar, podemos criar outro método que será público, evitar adicionar a fazer por Thames com um S e isso Nós vamos passar uma lista fora do nosso item de lista para fazer , e vamos chamar esta lista de itens abrir nossas chaves, fechá-las, e então aqui vamos usar uma característica C afiada, que é quatro cada. Então, passar por cada item nesta lista de itens, então vamos dizer colchetes abertos e item distante em itens e, em seguida, sublinhar ponto de conexão item de inserção e fechá-lo fora. Então, apenas para reiterar este quatro cada um vai passar por cada um desses, e cada vez que ele recebe um, ele vai inseri-lo no banco de dados. Isso deve ser tudo o que precisamos por agora. A próxima coisa que temos que fazer é realmente criar este modelo de dados que eu mencionei aqui para fazer um item de lista, e isso é o que vamos fazer na próxima palestra. 22. Como criar um modelo de dados: Na última palestra, criamos nosso código de banco de dados e fizemos uma referência a estes para fazer objetos de item de lista. Agora, estes são conhecidos como um modelo de dados. Eles são simplesmente um dedo do recipiente. Segure um monte de dados para fazer sem fazer lista. Então o que temos que fazer é criar uma classe para esse clique direito em nosso projeto compartilhado. Adicionar novo arquivo. Queremos uma classe vazia e vamos chamar isso para fazer item de lista e bater novo Remover o construtor dentro da classe. Então ficamos com a turma. Agora, isso vai fazer uso da parte da luz quadrada do nosso projeto, a parte do banco de dados. Então temos que ter uma declaração de luz quadrada usando. Então, dentro da classe, a primeira coisa que temos que ter é uma interjeição pública e vamos ter um get e um conjunto que nos permita acessá-lo. A razão pela qual não o fizemos é porque os bancos de dados quadrados dependem de identificações únicas e geralmente são chamados de “I D. e geralmente são uma entrevista. E acima desta linha, temos que adicionar mais algumas propriedades a esta entrevista, a primeira das quais é chamada de Chave Primária. Então, se você disser ao seu banco de dados, vá e procure Este I d. Ele sabe procurar este parâmetro real, precisamos de mais um e que é chamado de incremento automático e incrementos automáticos tem um olhar para o seu banco de dados atual e todos os o I ds Andi Ele encontra o mais alto em termos de ah, um número. E se o seu maior for, digamos 10 ele dará ao próximo um valor off 11. Então você nunca tem que se preocupar em realmente atribuir isso. Eu d. Estes itens aqui irão automaticamente atribuir o próximo para você. Então agora precisamos de algumas variáveis para realmente segurar itens da lista, e o primeiro 1 que precisamos é uma string pública, e este vai ser o nosso título. E precisamos de um get e enviado para que possamos acessá-lo e, em seguida, precisamos de outra cadeia pública e este será o conteúdo do nosso para fazer itens de lista. Então as notas se você gosta e nós precisamos obter e definir que finalmente precisamos de outra corda e isso é chamado Alfa e isso vai fazer algo muito inteligente. Ele vai definir a capacidade ou o ver através de nous fora de cada célula em nossa mesa, e eu vou cobrir isso um pouco mais tarde como nós entrar no ajuste fino fora do nosso aplicativo. Mas por enquanto, só sei que é o que ele vai fazer, e nós temos que ter um get and set para ele e salvar que é que completa o modelo de dados. E se você fechar isso agora, todos eles viraram para Azul e nós não temos mais nenhum vermelho na próxima palestra porque agora nós criamos tudo estava realmente indo para inserir alguns valores padrão em nosso banco de dados, e então vamos mostrar esses valores padrão dentro da nossa exibição de lista. 23. Como inserir itens de banco de dados em uma visualização de lista: temos um banco de dados, temos um modelo para o nosso item de lista para fazer, e agora precisamos conectá-los para a exibição de lista real em nosso up. Para fazer isso, vamos abrir nossa página principal dot Zamel dot CS e, em seguida, dentro aqui sob o construtor antes inicializado ou melhor, após componentes inicializados. Primeiro, temos que verificar. Na verdade, há algo no nosso banco de dados. Caso contrário, teremos um erro horrível se não houver, digamos apenas verificar banco de dados preenchido assim. E, em seguida, se nós verificamos que ele está preenchido, então nós podemos realmente atribuir algumas coisas para a nossa exibição de lista. Então digite, exibição de lista. E agora este nome de variável está sendo puxado da página principal ponto Zamel aqui. Então, a exibição de lista não. E nós precisamos de uma fonte de item porque cada lista precisa de uma fonte de dados como um poço de dados toe realmente colocado dentro de suas células. E para fazer isso, vamos ter outro método que ainda não criamos, que é começar a fazer lista, certo? Então temos que ler métodos. Vamos criá-los. O primeiro 1 que queremos criar é verificar. O banco de dados é preenchido, então vamos anular e vamos copiar isso até aqui e criar nosso método, e então ele tende a uma cor normal. Então o que vamos fazer aqui é verificar se o banco de dados está vazio. Se for, vamos colocar em alguns valores padrão para que não obtenhamos erros. A primeira coisa que fazemos é dizer se e, em seguida, queremos pegar uma conexão com o nosso banco de dados para que novo banco de dados não começa a fazer itens, e isso recebe uma lista de itens no banco de dados, e então nós temos que contar esses contadores de pontos. E se isso for menos de um, significa que não temos itens. Eu gostaria que você para executar o seguinte código e alguns patins, mas comentar aqui, que é preenchido banco de dados com padrão. Então a primeira coisa que temos que fazer é criar uma lista das coisas que vamos criar até agora, itens é igual a uma nova lista, e esta lista precisa de um tipo que é fazer lista, item e inicializá-lo. Agora precisamos adicionar algumas coisas a essa lista. Então quatro int I é igual a Não até que eu seja menor que 10 I mais sobre o que isso vai fazer é realmente me levar em um loop de quatro, e ele vai contar I um por um cada vez que ele vai ao redor até chegar. Tenho nove ou menos de 10 anos. E isso significa que começamos a zero. Na verdade, vou dar umas 10 vezes. Este loop vai ser executado 10 vezes. E porque a nossa APP tem 10 itens para fazer lista, isso é perfeito. Então, cada vez que ele passa, queremos adicionar algo aos nossos itens. Então dizemos que os itens pontam e abrem os nossos colchetes e, em seguida, em uma nova linha. Só para ficar claro, dizemos que queremos que você crie um novo item de lista para fazer colchetes abertos chaves abertas. E eu gostaria que você desse um título fora da citação do espaço de tarefas e, em seguida, mais e em seguida , entre parênteses, nós vamos dizer I mais um. E por que fazemos isso? Porque eu quero que isso diga tarefa um toda vez que ele vai girar, em seguida, encarregado de, em seguida, tarefa três. Mas eu realmente começa em zero e termina em nove. Então, se eu deixasse sem o mais um, diria que eu zero eu um eu dois até eu nove ou tarefa nove em vez. Mas se eu tivesse um, então está correto. E então, é claro que eu tenho que mudar isso porque é atualmente um número para uma string e depois vírgula . Então eu tenho que dar-lhe algum conteúdo e isso é igual a descrição em Vamos ter Dash Temp para editar e, em seguida, um comentário. E tivemos uma última coisa, que era Alfa. Vou conhecer Matt CIA Alfa vai de 0 a 1. Então zero significa que seu item é visto através de um significa que é opaco. Então temos que subtrair um menos e, em seguida, abrir dois colchetes e digitar duplo I porque temos que lançar isso. Eu tenho um duplo porque isso é o que Alfa espera que eu sou contra dividido por 20. Então, se você pensar sobre isso toda vez que vamos ao redor deste loop estavam dizendo 0/21 sobre 22/20 e então nós estamos dizendo um menos esse valor. É o Alfa está diminuindo lentamente à medida que vamos girando e girando este loop. Então vamos fechar esse suporte e fechar o colchete final e, em seguida, porque é um número e precisamos de uma corda. Dizemos Doc para string e, em seguida, fechar a inicialização do nosso item e fechar esse colchete nós vamos. Tudo se transformou na cor correta. Agora temos uma lista de itens. O que queremos fazer está sob este loop de quatro. Adicione-os ao banco de dados. Então diga novo banco de dados Dr Ad para fazer itens e, em seguida, passar a lista que acabamos de criar e que deve resolver isso. Agora precisamos criar nossa lista de “começar a fazer”. Então vamos copiar isso. Venha aqui e isso vai passar de volta uma lista fora para fazer itens de lista abrir nossos colchetes , criar nosso método, e isso é apenas um par de linhas, que é var itens é igual a um novo banco de dados. Abrir colchetes ponto começar a fazer itens neste passa de volta uma lista e, em seguida, finalmente, temos que retornar esses itens. Então, chegando ao nosso construtor, sempre que pulamos aqui, tudo é inicializado. Ele verifica os bancos de dados preenchidos, então se não estiver, ele irá preenchê-lo para nós. Então isso realmente só vai acontecer na primeira vez que carregarmos o aplicativo. Depois disso, isso sempre terá alguns itens, então nunca mais será executado. Em seguida, ele vai saltar para a nossa exibição de lista e definir seus itens como o que quer que ele recebe de get to fazer lista, que serão os itens de nosso banco de dados. Vamos bater, jogar e realmente testar isso, e ele deve pré-preencher nosso banco de dados e então nos mostrar nossa lista de coisas. Agora, se você se lembrar que Alfa que definimos está diminuindo lentamente, lentamente ficando cada vez mais baixo. E o que aconteceu aqui é que se eu voltar para xamarin e parar de correr em nosso cão de página principal Zamel com nossa imagem, nós definimos nossa rapacity como um dedo do pé de ligação alfa. Então ele disparou, encontrou o tributo ao Al Fran e amarrou-o a ele. E, claro, é evidente que também está vinculando esse título e conteúdo do modelo de dados que criamos. Ok, é assim que você insere itens de banco de dados em, retire-os novamente e exibi-los em uma exibição de lista na próxima seção. Nós vamos realmente olhar para fiação um pouco mais até este aplicativo e torná-lo um pouco mais funcional 24. Como vincular variáveis duas maneiras no Xamarin Forms: Vamos ver como vincular essas duas entradas de duas maneiras. Ir para o código por trás, que é o seu para fazer editar página ponto Zamel ponto CS Up no topo, precisamos de mais um usando declaração, e que está usando eu fui modelo componente ponto sistema e aqui em nossa classe antes chegar ao construtor, criar um pouco de espaço, e vamos criar o item real que vamos vincular. Então este será um público para fazer item de lista e isso vamos chamar o modelo, abrir nossos colchetes, e vamos definir que teremos um get e dentro que get, vamos retornar um item de lista para fazer como o contexto de ligação. Você vai notar que temos que lançá-lo para um item de lista para fazer e, em seguida, fechar isso fora e, em seguida, precisamos de um conjunto. Então dizemos “set”. E aqui temos o nosso contexto de descoberta vinculativa é igual ao valor, e então temos que disparar e na propriedade alterada para que ele saiba que nós realmente alteramos o valor dentro deste modelo e, em seguida, fechar que a desencadeou e fechar o modelo. Ok, agora precisamos configurar o nosso para fazer a página de edição. E se você se lembra, sempre que abrirmos esta página, temos que passar em um item para fazer. E no construtor, obviamente, é onde vamos fazer isso. Então nós dizemos para fazer lista de lutadores, nós vamos fazer modelo sublinhado. Então agora nós passamos, temos que copiá-lo para o nosso modelo principal, então modelo é igual ao modelo sublinhado, e então apenas para sutilezas, vamos ter um título nesta tela e vamos chamar esta edição apenas assim por diante. usuário sabe qual chuva de tela e o que eles devem fazer aqui. Ok, agora precisamos ter um em salvar, porque em nosso Zamel, nós realmente dissemos aqui quando você é clicado, atirando em salvar para fazer isso, nós apenas ir a público, sem segurança, e então nós damos a ele um objeto, que é um remetente e o evento padrão cães E. E isso é cuidar disso. Ok, então agora se ele tentou construir, nós vamos ter um erro porque aqui em sua página de edição de fazer realmente quer que nós passemos algo a ele. Então nós temos que lançar os itens e ponto selecionado e na frente disso abrir e fechar seus colchetes e vamos lançar isso para um item de lista para fazer. Então, agora, quando jogamos e abrimos essa página, devemos ter o título e a descrição definidos para nós e um botão salvar para jogar. Então, quando eu acertei no topo, lá vamos nós, nós temos. E aqui dentro, posso datilografar coisas, etc. Mas se eu apertar salvar, nada acontece porque ainda temos um método de salvar vazio. Certo, vamos parar com isso. E na próxima lição, vamos olhar para este método salvar e criar uma maneira de salvar em nosso banco de dados. 25. Como abrir uma nova página, controlador de visualização ou atividade no Xamarin Forms: Vamos criar e abrir uma nova página toda vez que clicarmos em algo na nossa lista de tarefas. Para fazer isso, é claro, primeiro precisamos criar um novo cão de página principal Zamel. Nós não somos principal pago, vez Apenas uma nova página, clique com o botão direito do mouse em nosso projeto compartilhado Adicionar novos formulários de arquivo, página de conteúdo Samel e nós vamos chamar isso para fazer na página, e ele cria o Zamel eo código por trás para nós. Então vamos deixar isso em branco por enquanto. Vamos concentrar-nos na forma como abrimos esta página. Então venha para a sua página principal ponto Zamel dot CS e queremos abrir essa página cada vez que clicarmos em algo. E se você se lembra, é como em itens selecionados, que na página principal ponto Zamel estava aqui na exibição de lista. Então aqui, precisamos de um pouco de código. Primeiro, temos que ter um pouco de código que diz ao nosso programa para realmente não processar o clique. Se a célula que é clicada está vazia, e a maneira como fazemos isso é, se o ponto selecionado item é igual a saber, em seguida, retornar. Ok, então uma vez que você tem isso fora do caminho. Primeiro temos de selecionar a linha. Então, quando você seleciona uma estrada, ele tem uma sobreposição cinza que diz que você realmente selecionou ou uma cor diferente Se você estiver no Android, dependendo do seu tema. Então nós temos que ter uma maneira de realmente de selecionar esse mecanismo de realce. A maneira como fazemos isso é pegando o remetente primeiro. Então vamos dizer vista de lista porque vamos custar algo remetente. Então nós estamos pegando o remetente e estamos dizendo, Ei, esta é uma exibição de lista e então vamos dizer Item selecionado é igual a saber, apenas para se livrar desse flash de cinza quando você clica nele, então nós temos que criar o página de edição real para fazer. Então vamos salvar o nosso para fazer isso. Paige é igual a um novo para fazer a página de edição, e não leva argumentos em É construtor. Então nós temos. É que, então, precisamos navegar até ele. E esta é a razão pela qual eu coloquei uma pia aqui, porque aqui em baixo, nós vamos ter um peso sobre a maneira de empurrá-lo para a pilha é ponto de navegação empurrar um pensamento e, em seguida, passamos a página que acabamos de criar para editar página. Ok, então eu vou jogar isso no simulador de iPhone, e quando eu clicar nele, ele deve abrir uma nova página para nós. Então clique aqui. E lá vamos nós. Ele abre e você vai notar que ele carrega o tema até o topo aqui fora do fundo verde e do texto branco. E quando eu retribui, isso me leva de volta. Ok, então é assim que você navega entre as páginas. E antes de terminarmos a lição, vou apontar algo muito, muito importante, e isso apanha muitos iniciantes. E isso é em nosso apenas fazê-lo x 10 em nosso projeto galpão. Esta página principal eu coloquei em nova página de navegação. Se você esquecer de colocar isso e você acabou de colocar a nova página principal, então tudo vai funcionar. Mas quando você clica, ele está tentando realmente obter a página de navegação por trás dele para que possamos sobrepor os dois para editar página. E se você não incluiu isso, seu aplicativo não pode fazer isso. Então você terá uma era horrível que envolverá um acidente. Portanto, lembre-se sempre, se você estiver indo para navegar no topo da sua pilha, você precisa deste 26. Como criar o layout XAML da tela de tarefa Editar: Vamos preencher isso para editar parte da nossa página. Então, na sua página de edição, Dr. Hamel, isso é ótimo. Alguns elementos. Só vou mover as coisas, para que pareça bem mais claro. A primeira coisa que temos de fazer é aqui na declaração. Declare outro item e este é outro espaço de nome XML. E isto é local. Isso é igual ao espaço de nome CLR Dash e, em seguida, precisamos do nome fora do nosso espaço de nome. Então, se você se dirigir a qualquer parte do nosso projeto, basta copiar isso e soltá-lo lá, e então precisamos de dois pontos e e montagem igual a, e este é também o espaço do nome e fechar suas aspas. Ok, Agora estamos prontos para colocar algum conteúdo em nossa página de conteúdo. Então aqui, crie um pouco de espaço. Vou recuar por uma aba. Então é claro, e nós vamos ter um layout empilhado padrão, e vamos definir nossas opções horizontais como centro e expandir quem e vamos definir nossas opções verticais como o mesmo centro e expandir e precisamos de uma orientação. Finalmente, o que será prático. Feche-o e deixe cair a outra etiqueta. Está bem. Aqui precisamos antes de tudo, um dedo do pé de caixa de texto. Segure nosso título um para manter nosso conteúdo e um item final que será um botão para nos permitir salvar qualquer coisa que mudarmos. Acabei de esquecer os iguais aqui em cima. Lá vamos nós. Então essas caixas onde podemos editar texto são chamados de entrada e definimos algum texto igual a Agora Aqui vem uma versão mais avançada fora de ligação. O que vamos fazer é ligar duas maneiras que eu vou abrir e fechar minhas chaves e dentro delas, eu vou digitar a ligação usual que nós veríamos fora do título. E depois vou pôr vírgula. E na próxima seção, vou dar-lhe um modo. Algum modo é igual a dois sentidos agora. Isso significa que se eu mudar um dos meus valores na minha base de código por trás disso, ele vai mudar na tela. Se eu mudá-lo na tela, ele também vai mudá-lo na base de código atrás dele. Então, eles estão sincronizados. Se você quiser. Então precisamos dar a isso algumas opções horizontais. E novamente centralizar e expandir. Mas isso pode ser qualquer coisa que você queira. Eu aconselho apenas experimentar com facilidade e ver o que funciona. E então precisamos de uma cor de texto. E só temos que fazer isso verde e fechar sua etiqueta. Então temos que fazer exatamente o mesmo com o nosso texto de conteúdo tão abaixo que eu acabei de copiá-lo . Vou mudar minha ligação para o modo de conteúdo para um centro expandir a cor verde do texto. Isso é bom. Isso é perfeito. Precisamos de um elemento final e há um botão para salvar isso. Então este é Button e precisamos de algum texto para o botão, que será realmente óbvio salvar. E então precisamos de um evento clicado e vamos passá-lo para on save. E nós vamos criar esse método dentro do nosso código por trás e finalmente a cor do texto para garantir que ele não colide com nada é igual a verde e fechar essa tag fora. Ok, agora eu vou, uh, para editar Page foi criado na próxima palestra. Vamos ver o código por trás e por dentro. Vamos ver como fazemos isso de duas maneiras encontrando 27. Como salvar a tarefa editada no banco de dados: nesta palestra, vamos salvar nossa tarefa editada no banco de dados. Agora, o primeiro passo nisso é realmente vir para o nosso arquivo de banco de dados em nossa PCL e adicionar um método aqui para editar coisas. E o método que vamos adicionar é público evitar editar item. E, em seguida , é claro, vamos passar-lhe um item de lista para fazer chamado Item. E aqui dentro, vamos ter uma ligação simples. Atualização ponto sobre o que a atualização faz é que ele encontra esse item com que eu d o i d primário e atualizá-lo com os novos dados. Então passaremos o item. Certo, feche o arquivo do banco de dados. Então lá dentro estão salvando. Queremos passar por cima. Mas nós, é claro, não queremos passar por cima se houver algum texto vazio lá dentro. E para contornar isso, precisamos fazer uma verificação. Então, acima disso em salvar, vamos criar um novo método público, e isso vai passar de volta um booleano um verdadeiro ou falso, e será o nome do cheque e criar o método. Então nós digitamos se ponto string é não ou vazio e, em seguida, temos que dar-lhe a string real. Então esse é o nosso título de ponto modelo. E, em seguida, se ele está vazio, devemos dizer ao usuário e dar-lhes um alerta se exibir alerta como uma era e, em seguida, alerta gostaria de uma mensagem. Então dizemos que o título não pode estar vazio e, em seguida, ele pede um título de botão, o que é ok, ok. E então nós temos que retornar false porque a verificação falhou e fechar que se e então se a verificação não correr através disso e a string não é não ou vazia, então nós simplesmente retornar true. Então sabemos que estamos bem. E então aqui em baixo, em nosso próprio método de salvamento, vamos usar esse cheque. Nós vamos dizer, se não verificar nome retornar. Então, se o nome do cheque for falso, então retorne porque não queremos salvar nada. Mas se não for falso, continuaremos através deste método. E isso significa que precisamos salvar nosso banco de dados, um novo item de edição de ponto de banco de dados, e então passamos o modelo. Agora, isso é diferente porque nas versões mais antigas do Samrin sem formas de salmão, você teria que realmente ir e obter o valor da, ah, a visão real que você tem aberto. Mas porque temos uma ligação bidirecional, o valor é colocado automaticamente aqui toda vez que é alterado. Isso é muito útil, então, depois de salvá-lo, queremos nos livrar dessa tela e voltar para a anterior. Então ponto de navegação pop um pensamento, e isso apenas aparece fora da coisa atual da pilha. Então vamos tocar no play e eles devem construir. E quando eu clicar em um item, poderei editá-lo. Lá vamos nós e eu vou editá-lo. Vou dizer que vou mudar a minha descrição. Eu só vou dizer, editada assim, eu vou apertar salvar, e isso deve ser salvo no banco de dados. Mas você vai notar que não aparece aqui. Isso é porque precisamos atualizá-lo de alguma forma. Então eu vou para casa duas vezes, deslizá-lo fora e, em seguida, executá-lo novamente, e ele deve encontrar essa tarefa. Lá está editado. Então nós temos uma última coisa a fazer aqui em Samarie, que é realmente retirar essa nova versão do banco de dados toda vez que voltamos para nossa página principal, e isso é realmente fácil de fazer. Abra a nossa página principal cão Zamel dot CS, e você vai notar aqui nós colocamos uma fonte item feudal lista e isso só é disparado quando as páginas principais criadas pela primeira vez. Nunca mais disparou. Então, claramente, gostaríamos de mover isso para algum lugar, que ele é demitido toda vez que a página aparece ou é atualizada ou algo assim. Para fazer isso, podemos anular alguma coisa. E você pode estar familiarizado com isso. Se você sabe que eu também Android e vamos substituir este método em aparecer assim por diante. Aparência é acionado toda vez que uma exibição reaparece. Então, se você colocar outros controladores de exibição ou atividades em cima dele e, em seguida, você removê-los, este método será acionado. E tudo o que temos que fazer é pegar esta linha na linha de origem e colá-la lá dentro. Então agora, quando tocamos isso toda vez que essa visão reaparece, o texto deveria ter mudado. Então, se eu apertar tarefa para e eu ir para editado e eu apenas colocar meu nome e apertar Salvar, lá vamos nós, ele está sendo atualizado. Ok, há apenas uma pequena queixa que eu tenho com este aplicativo e atualmente essas caixas redimensionadas para a tarefa atual. E se eu fosse digitar algo muito longo, meio que sai de você. Não vou consertar isso agora. Vou definir isso para você como um pouco de lição de casa. Então eu gostaria que você brincasse com a seção Zamel disso. Então, se eu parar de correr e vamos fazer a página de edição em algum lugar aqui entre essas opções , haverá uma maneira de expandir isso para ocupar toda a largura da tela. 28. Uma recapitulação rápida de tudo o que você aprendeu: Então, pessoal, chegamos ao fim deste curso e vou recapitular algumas das coisas que vocês aprenderam. Então você se lembra deles? A primeira coisa que olhamos para Waas Como é que o Amarin se forma? APS deve ser arquitetada, e passamos por cima do paradigma M V V M. Agora, idealmente, é assim que você quer realizar as coisas usando MPV em Quando se trata de Sammer informa, então nós criamos um rápido início Hello World, o clássico mundo do olá para ter uma idéia e uma sensação fora do que está acontecendo com bibliotecas de classe portáteis e projetos de produtos individuais. Em vez disso, criamos algo um pouco mais em profundidade do que apenas fazê-lo vezes um e lá dentro nós olhamos para como modificar nossas visões Zamel. Então, se eu apenas abri-lo, nós olhamos para como ter caixas de entrada e salvar coisas para lançar armazenamento sobre as preferências galpão que estão disponíveis em cada plataforma. Finalmente, demos uma olhada no avô do shopping. Basta fazê-lo X 10 onde aprendemos a criar uma lista, e nesta lista, nós a preenchemos com itens de bancos de dados sq light. Nós também olhamos para como vincular variáveis de duas maneiras dentro de nossos envoltórios. Então, toda vez que eu mudo algo em uma caixa de texto, ele muda automaticamente na variável no código atrás dela. E é aí que o modelo M V V M View começa a ser realmente útil. Nós também olhamos para o aplicativo anterior como instalar as formigas do Google porque, afinal, você quer ser pago por seu trabalho duro, não é, chefe? Também analisamos como acionar um novo controlador de visualização ou atividade de outro. Certo, essa é a recapitulação completa. Junte-se a mim na palestra final onde eu tenho um bônus especial só para você.