Crie o aplicativo de previsão do tempo com . NET MAUI | Asfend Yar | Skillshare

Velocidade de reprodução


1.0x


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

Crie o aplicativo de previsão do tempo com . NET MAUI

teacher avatar Asfend Yar

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

    • 1.

      Apresentação

      0:40

    • 2.

      Visão geral do aplicativo Weather

      2:37

    • 3.

      Como obter o tempo api

      4:30

    • 4.

      Crie aulas com C afiadas do JSON

      2:08

    • 5.

      Crie o curso de serviço do Api

      6:16

    • 6.

      Obtenha tempo por cidade

      3:08

    • 7.

      Crie a página do tempo

      9:46

    • 8.

      Visualização de coleta para dados meteorológicos

      1:26

    • 9.

      Exibe a descrição atual da cidade e do tempo

      4:32

    • 10.

      Exibe os dados atuais do tempo

      5:43

    • 11.

      Exibe imagens de tempo

      4:56

    • 12.

      Visão de coleção de tempo

      2:31

    • 13.

      DataBinding em coleção de tempo

      4:07

    • 14.

      Obtenha a localização do dispositivo

      4:35

    • 15.

      Evento com localização

      3:19

    • 16.

      Obtenha dados meteorológicos por cidade

      6:16

    • 17.

      Crie a página de boas-vindas

      2:39

    • 18.

      Rastreamento de versões

      2:08

  • --
  • 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.

86

Estudantes

--

Projeto

Sobre este curso

O foco principal deste curso é no . NET MAUI Weather App Development. Se você não tiver nenhuma experiência prévia de fazer aplicativos do mundo real, então este curso é um começo perfeito para você. Mas tenha em mente para completar este curso, você deve ter um conhecimento de XAML ou C#. NET .

Então, se você está familiarizado com o C# Líquido e XAML Ou, se quiser criar o aplicativo de tempo com seu favorito. Linguagem de programação líquida, então este é o curso certo para você.

Ao fazer este curso, você pode ter certeza de que o curso é cuidadosamente pensado e editado. E estou sempre feliz em fazer o conteúdo útil para os alunos.

Então, até o final do curso, você vai entender completamente:

  • Como criar um projeto completo do mundo real com . MAUI líquido

  • Obtenha o aplicativo de tempo do Rest Api
  • Crie cursos de modelo a partir de dados do Json

  • Consumir que o Api esteja lá. NET MAUI

  • Rastreamento de versão em . NET MAUI

Se você é um desenvolvedor ocupado e quiser aprender coisas rápidas em pouco tempo, este curso é um começo perfeito para você.

Conheça seu professor

Teacher Profile Image

Asfend Yar

Professor
Level: All Levels

Nota do curso

As expectativas foram atingidas?
    Superou!
  • 0%
  • Sim
  • 0%
  • Um pouco
  • 0%
  • Não
  • 0%

Por que fazer parte da Skillshare?

Faça cursos premiados Skillshare Original

Cada curso possui aulas 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, meu nome é S1 e eu vou guiá-lo neste curso. Sou engenheiro de software e profissional mais valioso da Microsoft. Eu projetei este curso para que você possa criar belos aplicativos móveis multiplataforma do início ao fim. Ao final deste curso, você poderá desenvolver os aplicativos móveis no filme Dalton com APIs RESTful. Então, se você é novo no filme pontilhado ou está pensando em criar aplicativos móveis multiplataforma , o discurso é o ponto de partida perfeito para você. Tudo bem? Então, o que você está esperando? Fazer esse curso? E vamos começar a aprender. 2. Visão geral do aplicativo para tempo: Nesta seção, obteremos o aplicativo de previsão do tempo com o filme dotnet. Deixe-me mostrar o aplicativo que vamos criar pela primeira vez. Em seguida, veremos essa tela de integração ou tela de introdução. Ok, vamos em frente e, no plano de fundo do nosso dispositivo, escolheremos nossa localização e, em seguida, obteremos os dados meteorológicos acordo com nossa localização. Agora, digamos que queremos verificar os dados meteorológicos de alguma outra cidade. Então, tudo o que você precisa fazer é procurar outra cidade. E aqui vamos nós. Desta vez, obteremos dados meteorológicos diferentes. Tudo bem, neste aplicativo consumirá as APIs restantes para o Open Weather Map. Agora, vamos acender o estúdio Villus. E então vamos adicionar um novo projeto de filme. Vamos escolher esse aplicativo pontilhado e clicar em Avançar. Vou dar a esse projeto o nome de aplicativo meteorológico. Ok, agora pegue este projeto. E aqui, na versão mais recente do RStudio, veremos o tom real. Não precisamos disso. Então, removeremos o shell do aplicativo. Da mesma forma, também removeremos a amostra da página principal e o arquivo CSS de dois pontos da página principal. Agora, no arquivo CSS abs ML dot, veremos esse erro porque não temos nenhuma página principal, nosso shell pitch do aplicativo. O que vamos fazer é botão direito do mouse e escolher Novo item. Então, nesta versão do Video Studio, microsoft S adicionou um modelo separado para uma base mensal pontilhada. Então, a partir de agora, usaria o Mojave. E então vamos escolher esta página de conteúdo pontilhada da Molly com pré-visualização em XAML. Tudo bem, vamos nomear esse espaço como página e edição dentro do nosso projeto. Ok, vamos lá. Agora, no arquivo CSS ML dot do aplicativo, vamos definir que a página principal é igual à página. Agora vamos continuar nosso trabalho na próxima lição. 3. Como obter o Api do tempo: Nesta lição, mostrarei como podemos obter a API climática. Bem, existem muitos fornecedores de API climática, mas usamos principalmente esse mapa meteorológico aberto para aplicações meteorológicas. Ok, então, neste curso, usaremos a API Open Weather Map. Vamos acessar este site. E aí clicaremos nessa API. E veremos diferentes opções de API. Podemos usar qualquer uma dessas APIs para obter os dados meteorológicos, por exemplo, essa opção é usada para obter dados meteorológicos de corrente escura. Essa opção é usada para obter os dados meteorológicos de quatro dias. Da mesma forma, temos opções diferentes. Também podemos usar essa previsão diária, 16, essa opção de se dados. Mas, no momento, isso não é gratuito e está incluído em todos os planos de assinatura pagos de algum outro plano gratuito. Neste t de cinco dias, nossa previsão é gratuita. Então, vamos escolher essa opção. Essa opção fornecerá ao veterinário os dados de cinco dias. E como esse é um plano gratuito, não obteremos os dados meteorológicos após cada hora. Obteremos os dados meteorológicos após 3 horas. Ok, agora, vamos clicar nesta documentação da APA. E ele verá o URL que é usado para obter os dados meteorológicos. Nesse URL, precisamos passar itens de filtro como latitude, longitude e ID do aplicativo ou chave APA. Vamos copiar esse URL e colá-lo dentro e em outras dívidas. Agora vamos ao Google. E lá você encontrará a latitude e a longitude da sua localização. Tudo bem, vamos copiar a latitude e longitude e colá-las na URL da sua API. Em seguida, obteremos o aplicativo meteorológico em mv0 pontilhado e permitiremos que nosso aplicativo escolha a localização do dispositivo. Com o teste, a API no navegador da web diz passar as coordenadas manualmente. Ok, agora vamos encontrar o ID do aplicativo, nossa chave de API. Para obter a chave da API, preciso me inscrever no Open Weather Map. Então, vou criar minha conta. Agora, depois de configurar minha conta, aqui no menu suspenso, vou ver a chave da API. Basta selecionar isso. E aqui podemos usar a chave de API padrão ou gerar uma nova. Ok, agora vamos copiar essa chave ABA e colá-la dentro do URL. Ok, vamos pressionar Enter e você obterá a essência e a resposta. Vamos copiar esses dados de destino. E agora procure este site, Jason beauty, fire. Entrar. Vamos colar os dados JSON e embelezar. Ok, aqui no lado direito, veremos os dados decentes no formato de codificação. Também podemos escolher outras opções para visualizar os dados. Vamos configurar a opção de visualização. E aqui no objeto verá coisas diferentes. Se expandirmos a opção de cidade , você verá atributos diferentes como nome da cidade, coordenadas, nascer do sol, pôr do sol, etc. Escolheremos a cidade para obter os dados meteorológicos atuais. Agora, aqui veremos a lista que nos diz que essa lista contém o seguinte número de registros. Vamos expandir a lista. E aqui veremos campos diferentes. Vamos expandir esse. E aqui, em geral, veremos dados de temperatura, pressão, umidade, etc. No campo vetorial, veremos os dados meteorológicos como descrição. E eu posso ter o melhor. Da mesma forma, no vento, temos velocidade, etc. Usaremos esses dados JSON dentro de um aplicativo de filme pontilhado. Ok, então, na próxima lição, excluiremos as classes C-sharp desses dados JSON. Nos vemos na próxima lição. 4. Gerar cursos com afinidade C do JSON: Somente se tivermos testado a API para verificar o clima. Agora, nesta lição, obteremos as classes de C sharp a partir dessa resposta à distância. Aqui no navegador da web, você verá esses dados JSON. Só precisamos copiar esse Jason e depois pesquisar este site. Desça até C-sharp. Tudo bem, aqui, vamos colar apenas alguns dados e convertê-los em classes e propriedades de C sharp. Aqui veremos as classes e propriedades de C-sharp. Você também pode doar as propriedades no caso Pascal. Mas algas e propriedades em minúsculas, a escolha é totalmente sua. Agora posso ir ao projeto da nossa filha Maggie, adicionar uma nova pasta e chamá-la de modelos. Agora, nesta pasta, vamos adicionar uma classe de apreensão e chamá-la de root. Ok, vamos adicionar essa classe. Agora você está pensando por que nomeamos essa classe como rota. Porque, de acordo com nossa decência, ver excedentes. Essa classe raiz é a classe principal. Você também pode ver que, além disso, é mencionado que, se quisermos desserializar esses dados JSON , precisamos usar o objeto adjacente convert dot dc lies da classe raiz. Vamos copiar esses dados. Logo depois disso. No estúdio de vídeo, removerá o sobrenome dessa rota. E então esses são os dados que copiamos. Aqui, criamos nossos modelos de óculos a partir dos dados JSON. Agora, na próxima lição, criaremos a classe de serviço da API. Nos vemos na próxima lição. 5. Crie um curso de serviço do Api: Nesta lição, criaremos a classe de serviço da API. Então, o que vamos fazer é adicionar uma nova pasta dentro do nosso projeto. E então Dean nesta pasta para os serviços. Em seguida, dentro dessa pasta, adicionaremos um novo serviço de API de ID de nome de classe C-Sharp. Agora vamos transformar o modificador de acesso à classe em público. Tudo bem? Nessa classe de serviço da API, obteremos um método e o chamaremos de get weather. Agora, dentro desse método, criaremos um novo cliente HTTP. Agora, quando chamaremos as APIs restantes, então cliente HTTP, que levará uma solicitação ao servidor. Então, com esse cliente HTTP, precisamos chamar o método nas APIs rest. Quando adicionamos o registro que usamos após a solicitação. Quando atualizamos o registro , usamos a solicitação PUT. E no caso de excluir o registro usará o método delete. Agora, no caso de obter nossos dados FASTA, precisamos de um GetMethod com esse cliente HTTP que chamará o método get string async. E esse método enviará a solicitação e obteremos a resposta no formato JSON. Aqui, VD para adicionar nossa URL de API. Então, o que vamos fazer é copiar URL da nossa API e colá-lo aqui. Aqui vamos passar nossas coordenadas como latitude e longitude. Então, nesse método, adicionaremos dois parâmetros do tipo double e os chamaremos de latitude e longitude. Ok, então neste URL concatenará a latitude e a longitude. Então, vamos encapsular essa função de formato de ponto de string de URL. E então, no lugar da latitude e longitude, adicionará um espaço reservado como 0,1 nos colchetes. Depois desse URL, adicionaremos um separador de vírgula e passaremos essa latitude e longitude, que serão obtidas a partir dessa função. Você lembra que esse é um método assíncrono. Então, precisamos usar a palavra-chave await aqui. E agora receberemos um erro porque ele não pode ser usado sem assíncrona. Portanto, precisamos tornar esse método assíncrono usando a palavra-chave async. Tudo bem, vamos armazenar o resultado em uma variável. E então essa variável para responder. Basicamente, essa variável falsa contém os dados JSON, que serão obtidos dessa URL da API. Agora, depois de obtermos os dados, precisamos analisá-los em classes C-sharp para que possamos mostrá-los em nosso aplicativo móvel. Então, quando obtivermos os dados no formato JSON, converteremos esses dados JSON em classes CCF usando apenas um objeto desserializado da porta de incremento. Esse Jason converte ponto d. objeto serializado. Precisamos de um pacote NuGet que esteja apenas em.net ou Newton soft dot json. No gerenciador de pacotes que pesquisa pacote e o instala. Depois de instalar esse pacote , fecharemos essa janela. E logo depois disso, usaremos isso em uma espécie de objeto serializado com ponto d. Depois, há todo o namespace para Newton soft door, GSM. Agora, no objeto digitalizado, precisamos passar o nome da classe e os dados decentes. Veja os dados decentes da variável de resposta. Então, passe a resposta aqui. E precisamos mapear essa decisão acordo com a rota, porque o vidro é a classe principal. Então, vamos mapear o DSM de acordo com nosso vidro raiz. Agora, vamos fazer isso usando a declaração de retorno. E nosso método retornará a resposta de acordo com a classe raiz. Mas teremos um erro. E isso porque estamos usando o branco. E aqui estamos retornando esses dados de acordo com a classe raiz. Então, se definirmos o tipo desse método, a raiz, ainda teremos um erro. E isso porque, se tornarmos o método assíncrono , precisaremos usar a tarefa t. Mas se não retornarmos nada , usaremos a palavra-chave task. Mas se quiséssemos devolver alguma coisa, então quando os tecidos são a tarefa de digitar. E esse tipo pode ser qualquer coisa. Pode ser uma string, um inteiro, flutuador, uma lista ou até mesmo um objeto. Porque estamos retornando os dados de acordo com a classe raiz. Então, faremos com que o tipo desse método seja tarefa fora da rota. Tudo bem, continuaremos nosso trabalho na próxima lição. 6. Obter tempo por cidade: Na última lição, adicionamos um método na classe de serviço da API. E esse método será usado para obter os dados meteorológicos acordo com as coordenadas, como latitude e longitude. Mas, de acordo com nosso aplicativo, também queremos obter os dados meteorológicos acordo com o nome da cidade. Então, o que vamos fazer é usar a API Open Weather Map por cinco dias. E lá no lado direito, vemos essa opção. Saiba se é pelo nome da cidade. Vamos selecionar isso. E esse é um URL que será usado para obter os dados meteorológicos de acordo com o nome da cidade. Ok, usaremos esse URL. Deixa eu te dizer uma coisa. Esses dois URLs, um com as coordenadas e outro com o nome da cidade. Eles tendem à mesma resposta à distância. Portanto, não precisamos criar outro modelo C-sharp. As classes escolherão as classes que criamos anteriormente. A única coisa que criará outro método na classe de serviço APA. Então, vamos até a classe de serviço da API e, em seguida, copiaremos esse método e colaremos aqui. Agora, vamos ver isso neste método para saber se por cidade, tudo bem, então removeremos esse URL. Logo depois disso. Vamos copiar esse URL para saber se é pelo nome da cidade e colá-lo aqui. Aqui, passamos a mesma chave de API que usamos no primeiro método. E no nome da cidade passará a cidade, que será obtida desse método. Neste método, passamos um parâmetro do tipo string e depois nós City. Tudo bem? E então vamos concatenar a cidade aqui. Aqui, criamos a classe de serviço APA. Agora, quando consumirá esses métodos de classe de serviço da API em algumas outras classes, como se pH. Em seguida, precisamos obter a nova instância da classe de serviço da API. E com dívidas, podemos chamar os métodos de classe de serviço APA. Mas adicionaremos essa classe e esse método estático que não precisamos instanciar a classe sempre que quisermos consumir esses métodos de classe de serviço da API, então podemos usar apenas o nome da classe. E junto com isso, podemos chamar esses métodos. Tudo bem, então é melhor definir essa classe e esses métodos como estáticos. Tudo bem, isso é tudo para esta lição. Agora, te vejo na próxima. 7. Design da página do tempo: Nesta lição, criaremos a página do clima. Então, vamos para o arquivo XML da página de edição e, em seguida, podemos reescrever nosso código XAML. Mas antes disso, vamos dar uma olhada nessa imagem, que vamos criar. Bem, nesta página preferida, escolheremos o layout da grade. E aqui ele dividirá esse design em diferentes partes. Esta é a primeira fila e a altura é Otto. Então temos essa segunda, terceira, quarta e quinta linha. E a altura de todas essas fileiras é Otto. Quero dizer que criei poucos ácidos. unidade alternativa dois é apenas baixar esses ácidos junto com este vídeo. E logo depois disso, Judy deve colar esses ácidos na pasta Imagens que está presente na pasta Recursos aqui, que adicionou todos esses ativos. Agora vamos executar esse aplicativo porque criaremos um design com a ajuda da opção de recarga a quente. Aqui, nosso aplicativo está sendo executado com alguma mensagem de texto. Vamos remover isso. E agora vamos adicionar um layout de grade. E, em seguida, adicione a definição de linha igual a. E então adicionaremos cinco linhas com a altura do auto. Logo depois disso. Vamos definir o espaçamento entre linhas de vinte unidades. Em seguida, criaremos um design para essa primeira linha. Essa primeira fila contém dois filhos. Então, vamos usar o layout da pilha aqui e colocar o layout da pilha na grade dot rho igual a zero. Em seguida, definiremos a margem de 20 unidades do lado esquerdo, superior e direito. E não precisamos de uma margem inferior. Então, vamos definir zero. Queremos esses controles na direção horizontal. Portanto, defina a orientação dessa nuvem de tags como horizontal. Tudo bem? Então, nesse layout de pilha, precisaremos de duas coisas. A primeira é sua localização e a segunda é o ícone de pesquisa. Para fazer isso, seu controle de localização escolherá o controle de nível e definirá o texto como igual à sua localização, e o tamanho do telefone será igual ao padrão. Tudo bem? Mas precisamos desse tipo de controle. Então, vamos embrulhar essa etiqueta dentro da moldura. E, por padrão, o preenchimento da moldura é de 20 unidades. Então, vamos configurá-lo para dez unidades. Em seguida, definiremos que o raio do canto é igual a 35 unidades, tem a propriedade de sombra igual a verdadeira e a cor da borda é igual a provável. Agora, vamos adicionar outro controle para esse ícone de pesquisa. Para isso, adicionaremos um botão de imagem. Em seguida, defina a fonte dessa imagem como igual. Deixe-me mostrar a imagem que vamos usar na pasta Imagens. Temos essa imagem para o ícone de pesquisa, usaria essa imagem aqui. Em seguida, definiremos a solicitação de altura e largura para 30 unidades e definiremos toda a opção central para expansão. Tudo bem? Agora vamos abordar o design da segunda linha. Bem, nesta função serão necessárias duas coisas, nome da cidade e a descrição. Primeiro, vou adicionar um layout de pilha e colocá-lo no ponto da grade Rho é igual a um. E definiremos que a orientação dessa camada de texto é igual à vertical. Por padrão, uma orientação escalonada é vertical. Ok, agora vamos adicionar um controle de nível e chamá-lo de cidade LBL. Em seguida, defina o tamanho da fonte igual a 40 unidades. Ok, logo depois disso, quem definiu a opção horizontal é igual centro e o texto é igual a cinza. Defina também o texto desta etiqueta como anterior. Vamos adicionar qualquer cidade a eles. Quando você consumir a API , removeremos esse valor codificado do nome da cidade. Mas agora estamos criando esta página meteorológica. Então, adicionaremos o valor codificado aqui. gostamos desse nível de controle, precisamos de outro nível de controle. Aqui, definiremos que o nome é igual a LPL. Leia a descrição. O tamanho da fonte é igual a médio, horizontal, opção é igual ao centro na cor do texto é igual a cinza ardósia. Em seguida, adicionaremos um texto codificado aqui, que será removido posteriormente. Tudo bem. Agora vamos para a terceira fila. E essa linha apenas adicionará um controle de imagem, porque há apenas um controle nessa linha. Soul não usa nenhum layout. Essa ferramenta de criação de imagens será filha direta do nosso layout de grade. Então, vamos adicionar um controle de imagem e colocá-lo dentro de uma grade, ponto rho igual a dois. Em seguida, definiremos o nome dessa imagem como ícone meteorológico do IMT. Opções para começar. E a solicitação de altura e largura é igual a 200 unidades. Em seguida, definiremos a fonte dessa imagem. E aqui vamos passar qualquer imagem aleatória da pasta de imagens. Mova isso mais tarde. Ok, agora vamos para outra linha. E essa linha adicionará outro bom layout. Então, vamos adicionar uma grade e colocá-la dentro de um ponto de grade Rho igual a três. Em seguida, em disputa, adicionaremos duas linhas com a altura de auto e três colunas com um peso de 0,3 t estático para todas elas. Em seguida, adicione a margem igual a 20 unidades. Agora vamos adicionar um controle de imagem e colocá-lo dentro de uma linha zero, coluna zero. Dito isso, os furos são duas opções iguais centro e à solicitação de altura de 25 unidades. Logo depois disso, definiremos a fonte dessa imagem como igual. E aqui ele passará esse nome de imagem para umidade, que vem da nossa pasta de imagens. Tudo bem, agora vou adicionar um controle de etiqueta, umidade íntima do LBL. Em seguida, colocaremos isso dentro do ponto da grade Rho é igual um e clicaremos na coluna de pontos igual a zero. Logo depois disso, defina toda a opção sutil como Center. Por enquanto, definiremos a propriedade text e adicionaremos qualquer número aleatório aqui. Em seguida, adicionaremos outro nível de controle e a temperatura do Navy LBL. E vamos colocar esse rótulo. Um bom ponto rho é igual a zero e a coluna da grade é igual a um. Em seguida, usaremos Grid dot, rowspan igual às opções horizontais para o centro. Tamanho da fonte de 40 unidades nos atributos da fonte em negrito. Vamos passar qualquer número aleatório na propriedade text. Ok, agora vamos copiar esses dois controles de umidade, imagem e nível. E depois vamos colá-lo aqui. Ok, primeiro vamos colocar esta imagem no ponto vermelho rho é igual a zero. Uma boa cor escura é igual a dois. E para este nível escolherá Grid dot Rho é igual um e Greet dot colon é igual a dois. Em seguida, mudaremos o nome dessa etiqueta para LBL Vint. E para essa fonte de imagem definirá a imagem que vem da nossa pasta de imagens. Tudo bem, agora, na próxima lição, abordaremos nossa visualização da coleção, que colocaremos nesta última linha. Nos vemos na próxima lição. 8. Visualização de coleção para dados meteorológicos: Nesta lição, adicionaremos a visualização da coleção na página do clima. Anteriormente, criamos esse design. Agora vamos adicionar uma visualização de coleção e colocá-la dentro dessa grade, o ponto Rho é igual a quatro. Defina o nome dessa visualização da coleção como CV, se também definiremos se a solicitação de altura é igual a 100 unidades. Já abordamos a visualização da coleção anteriormente no aplicativo de frutas e no aplicativo de notícias. Dessa vez, economizaremos tempo e usaremos a técnica de copiar e colar. Então, o que vou fazer é adicionar esse código para visualização da coleção. Aqui temos uma visão da coleção com uma grade. E dentro dessa grade, pegamos ferramentas. Uma é para saber se é imagem, segunda é para temperatura e a terceira é para data e hora. Tudo bem? E queremos esse tipo de design com apenas uma linha e na direção horizontal. É por isso que usamos o layout de itens lineares. Agora, na próxima lição, usaremos essa API e exibiremos os dados meteorológicos nesta página de clima. Ok, nos vemos na próxima aula. 9. Mostrar a descrição atual da cidade e do tempo: Nesta lição, vamos consumir que a API climática exibirá os dados meteorológicos atuais e a página meteorológica. Então, vamos ao código por trás do arquivo, ou melhor, da página. E eles começarão de novo. Queremos obter esses dados e, em seguida, chegaremos a esta página. É por isso que usaremos nosso próprio método atraente. Ok, vamos ignorar o próprio método de opinião. E dentro disso, chamaremos nossa API para obter os dados meteorológicos. Escolherá a classe de serviço APA e dissolverá o namespace. Em seguida, chamaremos o método get, que tomará a latitude e a longitude. Agora, vamos passar alguns valores estáticos aqui. E mais tarde, quando trabalharmos com a localização do dispositivo , passaremos as coordenadas acordo com a localização do dispositivo. Agora, esse é um método assíncrono, então vamos usar para aguardar aqui. E, obviamente, precisamos adicionar uma música junto com o próprio método atraente. Ok, agora vamos armazenar o resultado em uma variável. E não alcançamos o resultado. Com esse resultado, podemos escolher as propriedades de nossas classes de modelo. Dentro do nosso aplicativo. Primeiro, encontraremos a cidade e a descrição do clima. Para exibir. A cidade irá para o incêndio da beleza de Jason. E dentro da cidade verá o nome da cidade. Ok, para obter o nome da cidade, usaremos o resultado que realmente contém a resposta da API. E é do tipo raiz. Então, de acordo com nossos dados decentes, vamos escolher a cidade, e então nós escolhemos o nome da cidade. Tudo bem. Agora, no arquivo XAML da página Veda, adicionamos esse rótulo para cidade. Apenas removerá o valor do texto codificado. E então atribuiremos o valor a essa cidade LBL no código por trás do arquivo. Vamos atribuir esse valor à propriedade de texto de pontos LBL City. Da mesma forma, vamos encontrar uma descrição melhor. Então, voltando ao purificador JSON. Ali. Vamos abrir esse ListNode porque queremos obter os dados meteorológicos atuais. Soldados neste nodo zero. O resto dos nós contém dados para outros cinco dias com intervalo de t horas. Depois de expandir, o nó zero expandirá o clima. E aqui veremos a descrição. Para acessar essa descrição. Primeiro, temos que usar esse resultado com uma resposta decente. Em seguida, vamos escolher o nó da lista e passar zero aqui porque queremos buscar os dados e o nó zero. Tudo bem? Em seguida, escolheremos o nó do fornecedor e também passaremos zero aqui. Conforme mencionado no incêndio de beleza de Jason. Agora podemos escolher a propriedade de descrição. Ok, você vê como é fácil contaminar tipos complexos de dados. Agora, atribuiremos esses dados à nossa LPL, seja uma propriedade de texto de ponto de descrição. Em seguida, iremos para o arquivo XAML da página da web. E então não precisamos desse valor codificado para a descrição. Então, vamos apenas remover isso. Ok, agora vamos executar esse aplicativo. E aqui vamos nós. Você pode ver que obteremos nome da cidade e sua descrição aqui. Agora, na próxima lição, trabalhamos com as imagens e também veremos como obter a temperatura. Tudo bem, nos vemos na próxima lição. 10. Exiba dados históricos atuais: Nesta lição, vamos exibir os dados meteorológicos. Trabalhamos com a cidade e se a descrição. E agora, nesta lição, exibiremos os dados meteorológicos, como temperatura, umidade e velocidade do vento. Primeiro, vamos ao purificador DSM. E eles expandirão esse nó zero da lista. E veremos esse cano principal e abaixo disso, veremos nossa temperatura. Ok, então no código por trás do arquivo, usaremos isso como lista de pontos L do ponto de índice zero Min, temperatura do ponto. E junto com isso, concatenaremos o símbolo do grau Celsius. Você pode encontrar o símbolo de graus Celsius no Google. Tudo bem, vamos lá. Agora, atribuiremos essa temperatura à propriedade de texto do ponto de temperatura LDL. E no arquivo XAML ou na página da pasta, removerá os dados de temperatura codificados. Ok, agora vamos executar esse aplicativo. E aqui vamos nós. Você pode ver que obteremos essa temperatura, mas não está entre Celsius e Fahrenheit. Portanto, há muitas maneiras de converter Fahrenheit em Celsius. A primeira é que podemos fazer uma lógica em C sharp para converter nossa temperatura Fahrenheit em temperatura Celsius. Mas, de acordo com o Open Weather Map, a API é muito fácil para nós. De acordo com a documentação deles, basta passar a métrica de igualdade do útero no URL da API. E isso é tudo o que obteremos os dados de temperatura em graus Celsius. Então, o que vamos fazer é ir para a classe de serviço da API e eles passarão as unidades iguais métrica nesses dois óculos APA. Vamos executar esse aplicativo mais uma vez. Agora, desta vez, você verá o clima, a temperatura em graus Celsius. Esse é outro problema, ou seja, não precisamos desse valor do ponto. Precisamos arredondar esse valor. Vamos às classes do modelo e elas estão dentro da classe principal, veremos essa propriedade úmida que representa a temperatura. Ok, vamos adicionar outra propriedade do tipo double e chamá-la de temperatura. E então atribuiremos nossa temperatura à propriedade de temperatura. Logo depois disso. Vamos encerrar essa temperatura e o ponto do tapete na função errada. Bem, matt é uma classe em C Sharp e função de interrupção será usada para arredondar o número. Agora, no código por trás, em vez de usar a temperatura, usará a propriedade de temperatura. Ok, vamos executar esse aplicativo. E aqui no dispositivo vai ver a temperatura de uma maneira agradável. Tudo bem, agora vamos trabalhar com nossa umidade e Vint. Então, de volta ao incêndio da beleza de Jason. E no nó principal, temos essa propriedade de temperatura que usamos anteriormente. E agora. No mesmo nó principal, verá essa propriedade de umidade. Então, usaremos a mesma lógica para acessar a umidade, que usamos para acessar essa temperatura. No código por trás do arquivo, vamos escolher um ponto próprio. Em seguida, escolha a lista de propriedades de umidade de ponto de índice zero, mínimo e ponto e concatene o símbolo de porcentagem no final. Agora, atribuiremos essa umidade à propriedade de texto do ponto de umidade LBL. E no arquivo XAML, se página removerá o valor codificado de umidade. Ok, agora vamos começar com a velocidade do vento no Jason Beauty Fire abrirá isso quando o nodo. E lá veremos a propriedade de velocidade. Para acessar isso, usaremos isso como uma lista de pontos del da velocidade do vento com índice zero. E junto com isso, concatenaremos quilômetros por hora. Em seguida, atribuiremos esse valor ao texto do ponto da velocidade do vento LBL. E não se esqueça de remover o valor codificado da velocidade do vento no arquivo XAML de pontos do banco de dados. Tudo bem, vamos lá. Agora, vamos executar esse aplicativo mais uma vez. Aqui no dispositivo, veremos os dados meteorológicos, como temperatura, umidade e velocidade do vento. Agora, na próxima lição, trabalharemos com imagens de Darth Vader. Então, nos vemos na próxima lição. 11. Exibição de imagens meteorológicas: Nesta lição, vamos trabalhar com as imagens meteorológicas. Em vez de um aplicativo veterano verá uma imagem codificada. Agora mostrará a imagem de acordo com a API de clima. Então, vamos ao purificador adjacente abaixo da lista, explicaremos melhor isso. Aqui temos um ícone com algum código. Agora, para acessar as imagens meteorológicas, precisamos seguir as diretrizes de imagens do mapa meteorológico aberto. Vamos até esse URL. Para acessar as imagens, precisamos usar esse URL. Além disso, precisamos adicionar o código da imagem. Vou copiar esse URL e colá-lo outra guia e clicar em Enter. Tudo bem, vamos lá. Agora, adicionaremos outro código de imagem e pressionaremos enter e veremos outra imagem. Tudo bem, então precisamos seguir essas diretrizes de imagem para acessar as imagens. Vamos ao nosso projeto. E eles irão para as classes modelo. Dentro da classe vetorial. Vamos adicionar a propriedade do tipo string e chamá-la de URL do ícone completo. Em seguida, copiaremos o URL da imagem e o atribuiremos a essa propriedade. Ok, agora, na imagem, o URL concatenará o ícone, que obteremos uma resposta decente. Então, vamos encapsular essa função de formato de ponto de string de URL. E no lugar de eu poder codificar, adicionaremos um espaço reservado. Depois desse URL, adicionará um separador de vírgula e , em seguida, adicionará um ícone aqui. Tudo bem. Agora, no código da página de vídeo por trás do arquivo, vamos usar o ponto resultante. Em seguida, queremos acessar a propriedade do ícone. Então, para acessar esse ícone, primeiro precisamos de uma lista de índice zero. Então, precisamos de um valor de índice zero. Logo depois disso, podemos usar a propriedade icon. E como adicionamos uma propriedade completa do URL do ícone , usaremos esse ícone completo, você será a propriedade aqui. Em seguida, atribuiremos esse ícone a essa propriedade de fonte de pontos meteorológicos do IMG. E no bit federal arquivo XAML removerá a fonte D codificada desta imagem. Ok, agora vamos tentar executar esse aplicativo. E desta vez teremos um ícone climático dinâmico. Vamos ver se precisamos desses ícones escuros. E queremos personalizar os ícones. Já adicionamos os ícones na pasta Imagens com essas convenções de nomenclatura padrão. Ou eu posso nomear começa com o sublinhado do ícone. Então temos o código do ícone. Agora, nessa classe vermelha, vamos adicionar outra propriedade e chamá-la de ícone personalizado. Em seguida, escolheremos o operador lambda e, logo em seguida, escolheremos a função de formato string dot. E dentro disso, adicionaremos aspas duplas e adicionaremos o nome do ícone. Dentro da pasta de imagens, temos muitos ícones de clima e tudo isso começa com o sublinhado do ícone e, em seguida, cada ícone tem um código exclusivo. E depois disso, temos a extensão Dot PNG. Então, adicione o sublinhado do ícone. E no lugar de eu poder codificar, adicionaremos um espaço reservado. E logo depois disso, vamos adicionar a extensão PNG de pontos. Ok, agora vamos adicionar um separador de vírgula e adicionar esse ícone aqui. Com essa linha, podemos usar nossos ícones personalizados. Agora, no código do banco de dados por trás do arquivo, quem usa apenas o ícone personalizado. E então executaremos esse aplicativo. Aqui. Você verá que, desta vez, obteremos nosso ícone personalizado. Então, isso é tudo para esta lição. Agora, te vejo na próxima. 12. Visualização da coleção de tempo: Nesta lição, adicionaremos a visualização de coleta de dados meteorológicos por hora. Anteriormente, trabalhamos com os dados meteorológicos atuais. Agora vamos começar nosso trabalho com o Collection View. No código por trás do arquivo. Vamos usar o próprio método atraente. E aí já consumimos uma API climática. E esse resultado contém os dados provenientes da API. Agora, vamos adicionar um loop foreach porque queremos obter a lista de dados meteorológicos. Então, adicionaremos um loop para cada. E aqui dentro disso, queremos uma lista de se queremos hidratar a classe raiz. Temos essa propriedade da lista, e essa propriedade conterá nossos dados meteorológicos por hora. Portanto, no for, cada loop acessará a propriedade list com esse resultado. Agora, vamos relembrar os conceitos de ListView e CollectionView que discutimos na seção Visualização em lista e Visualização de coleção. Primeiro, adicionaremos uma lista e, em seguida, adicionaremos os dados à lista. E, finalmente, atribuiremos a lista à fonte do item da visualização da coleção. Então, vamos adicionar uma lista no código da outra página por trás do arquivo. Agora a pergunta é: qual é o tipo dessa lista? Esta lista será do tipo lista de classe que está presente dentro da nossa pasta de modelos. Ok, agora vamos renomear essa lista para lista. A estrutura do índice. Vamos inicializar essa lista. Agora, no loop para cada, vamos adicionar os dados dentro dessa lista de clima usando o método auxiliar add. E fora desse loop de foreach usará a fonte do item de pontos meteorológicos do CV igual à lista, o clima do CV é o nome de visualização da nossa coleção. E criamos essa visualização da coleção no arquivo XAML do bit meteorológico. Tudo bem, agora, na próxima lição, vincularemos os controles WE da coleta de dados. Ok, nos vemos na próxima aula. 13. Data Binding in Weather Collection View: Nesta lição, usaremos essa vinculação de dados dentro da nossa visualização de coleção para que possamos exibir os dados meteorológicos dentro da visualização da coleção. Na outra página, veremos três controles dentro da visualização da coleção, a imagem e dois rótulos no distante embelezado. Podemos ver que, para obter a imagem, escolherá em vez do índice zero. E então vamos escolher a propriedade do ícone. Mas em cada classe de modelo, usamos um ícone personalizado. Vamos vincular esse ícone personalizado, seja qual for o controle de imagem. Então, o que vamos fazer é acessar a página da web. Ali. Vamos encontrar a fonte da imagem com o ícone personalizado de clima de ponto índice zero. Tudo bem, agora vamos vincular essa propriedade de textos de nível à propriedade de temperatura. De acordo com o DSM embelezado, a propriedade de temperatura está presente dentro de uma classe principal. Então, vamos usar a temperatura do ponto principal. Na classe principal, adicionamos uma propriedade personalizada de temperatura para que possamos obter a temperatura em uma rodada de 4 bits vendida por esse texto de nível sem a propriedade principal de temperatura do ponto. Tudo bem, da mesma forma, vinculará esse segundo nível à propriedade de data. Agora, na beleza decente, o fogo verá uma data no formato de hora Unix. E precisamos converter isso em formato de data legível por humanos. Então, na pasta de modelos, vamos para essa classe de lista. E aí temos esse nome de propriedade d t. Bem, precisamos de outra propriedade do tipo string, que será usada para converter nosso horário Unix para o horário UTC. Então, antes de adicionar a propriedade, vamos ao pacote NuGet. Ali. Este pacote para converter o horário Unix para o horário UTC. Tudo bem, vamos instalar esse pacote NuGet. Agora, uma vez instalaremos este pacote NuGet. Em seguida, adicionaremos uma propriedade do tipo string e a chamaremos de datetime. Em seguida, usaremos o operador lambda. E logo depois disso, usaremos um carimbo de data/hora UTC. E para esse carimbo de data/hora UTC, precisamos importar esse namespace. Ok, agora, com este carimbo de data/hora UTC escolherá esse método de conversão para UTC. E esse método tomará a data no formato Unix. Então, vamos passar esse D, D aqui. Tudo bem. Agora, essa linha converterá um horário muito unix em UTC. Ok, agora, se você não quiser usar este pacote NuGet para converter o horário Unix , ela poderia simplesmente usar esse código para converter sua sede na próxima vez em UDC. Vou anexar esse trecho de código junto com este vídeo. Ok, agora vamos para a página da web. E aí, vamos encontrar a propriedade de texto desse rótulo com a data e hora, porque o DT ou datetime é um filho direto da lista. Portanto, não precisamos de nada antes da data, hora, assim como fizemos anteriormente com a imagem e a temperatura. Porque a imagem e a temperatura não estão presentes na classe da lista, mas o DateTime está presente dentro da classe da lista. Então, seremos diretamente positivos. Tudo bem, agora é hora de executar esse aplicativo. Depois de executar esse aplicativo , veremos esta página sobre o clima. E na parte inferior desta página, veremos uma visualização da coleção com dados meteorológicos. Isso tudo é desta lição. Agora, te vejo na próxima. 14. Obtenha o local do dispositivo: Nesta lição, trabalharemos com o serviço de localização. Atualmente, codificamos a latitude e a longitude na API climática. Mas agora queremos obter a latitude e a longitude de acordo com nosso dispositivo. Então, vamos para o código da página da web por trás do arquivo. E então vamos escrever nosso código para obter a localização do dispositivo. Mas antes disso, quero dizer que, no momento da gravação deste vídeo, Microsoft Team não atualizou a documentação do plug-in Xamarin Essentials. O novo nome é Molly Essentials. Tudo será o mesmo no Xamarin Essentials e no plugin Molly essentials. Então, vamos ao Google e pesquisaremos a geolocalização do Xamarin Essentials. Tudo bem, vamos abrir esse link. Cada um tem plataformas diferentes, como Android, iOS e Windows. Mostrarei como adicionar a permissão no Android. Então, vou copiar essas permissões. E, de acordo com a documentação, precisamos adicionar essas permissões no arquivo de manifesto do Android. Então, vamos até as plataformas, expandiremos o Android e abriremos o arquivo de manifesto do Android. Ali colaria essas permissões. Agora vamos salvar o arquivo e fechá-lo. Da mesma forma, no iOS, precisamos adicionar essas permissões no arquivo info.plist. Eu disse anteriormente no aplicativo de notícias sobre como podemos adicionar permissões no projeto iOS. Deixei essa tarefa para você adicionar essas permissões e o projeto Iris. Ok, agora no arquivo do acordeão, leia a página. Vamos adicionar um método AC do tipo crepúsculo e nomeá-lo, obter localização. Ok, agora neste método, usaremos o código para obter a localização. Portanto, de acordo com a documentação, precisamos usar essa classe await geo-location e esse método get location async para obter os dados de localização. Suco de alma, peso, vidro de geolocalização e, em seguida, chamar GetLocation são estigmáticos. Agora vamos armazenar o resultado em uma variável e chamá-la de localização. Com o deslocamento, podemos escolher muitas coisas, mas precisamos apenas da latitude e longitude vendidas. Use a latitude do ponto de localização e adicione dois campos fora desse método do tipo double e nomeie-o. A atitude. E o outro nome do campo será longitude. Agora, atribuiremos a latitude do ponto de deslocamento à latitude , longitude do ponto de localização à longitude. Agora, quando o usuário executará o aplicativo , o método do proprietário chamará o método getLocation. Ok, então vamos chamar esse método getLocation aqui com a palavra-chave await. Então, nos valores codificados de latitude e longitude, passarão a latitude e a longitude, que chegarão da localização do dispositivo. Tudo bem? Agora, antes de entrar no aplicativo, quero dizer que, se você estiver usando o dispositivo real, não precisará adicionar nada. Nosso aplicativo, vamos escolher sua localização atual. Mas se você estiver usando o emulador, o emulador escolherá o local padrão. Assim, podemos definir a delegação no emulador de acordo com nossa escolha. No emulador, irá para esses três pontos. A localização do 2 aqui na barra de pesquisa. Escolha o local de acordo com sua escolha. Tudo bem? Em seguida, defina a localização. Ok, agora vamos executar esse aplicativo. E aqui vamos nós. Desta vez, obteremos o dispositivo ou emulador do alfabeto de localização. Ok, até agora tudo bem. Cobrimos a parte da localização. Agora, nos vemos na próxima lição. 15. Evento com mapeamento de localização: Anteriormente, trabalhamos com a localização de um dispositivo para obter os dados meteorológicos. Agora vamos ver se mudaremos a localização do dispositivo. E se o aplicativo estiver aberto ou em segundo plano e pressionar esta sua localização, precisaremos obter os dados da difusão de acordo com nossa localização mais recente no arquivo SAML do banco de dados. Vamos até esse quadro que contém essa etiqueta para sua localização. Vamos adicionar um reconhecedor de gestos. E logo depois disso, criaremos um gesto de toque na localização íntima dos dados. E então teremos um evento de toque. Não podemos obter o evento de clique além do botão e do botão de imagem. É por isso que criamos o evento de profundidade. Agora vamos para a página da web chamada arquivo BAM. Dentro desse evento de etapa, precisamos escrever o código para obter os dados meteorológicos por localização. Temos que usar o mesmo código que escrevemos em seu próprio método de aparência. Então, a fim de remover a duplicação, reutilizará o mesmo código. Primeiro, adicionaremos um método assíncrono do tipo tarefa e o nomearemos, obteremos dados meteorológicos por localização. E esse método usará dois parâmetros do tipo duplo, latitude e longitude. Ok, agora vamos cortar esse código de API do próprio método de acréscimo e colar esse código dentro desse método. Agora, no evento tapped, chamaremos o método getLocation porque, quando esse usuário executar o aplicativo pela primeira vez , chamaremos o getLocation no método owner beam. Mas se o aplicativo for aberto e agora o local for alterado, chamaremos novamente o método getLocation nesse evento de profundidade. Depois disso, chamaremos isso de obter dados meteorológicos por localização e massa. Latitude e longitude. Não se esqueça de adicionar o await async. Espero que você tenha esse conceito, isso não é nada novo aqui. Acabamos de reutilizar o código com a ajuda de métodos. Agora vamos executar esse aplicativo e obteremos a localização de acordo com nosso dispositivo. Agora vamos mudar a localização do dispositivo. E se pressionarmos a opção Localização deste ano , desta vez obteremos os dados meteorológicos de acordo com nossa nova localização. Da mesma forma, vamos tentar mais uma vez. Tudo bem, vamos lá. Então, tudo isso é desta lição. Agora, te vejo na próxima. 16. Obtenha dados meteorológicos por cidade: Anteriormente, trabalhamos com os dados meteorológicos por localização. Agora, nesta lição, vamos trabalhar com os dados meteorológicos por nome da cidade, atitudes. Eles tocarão nesse ícone de pesquisa e ele verá um pop-up onde poderá digitar o nome da cidade. E então os dados meteorológicos foram alterados de acordo com o nome da cidade. Então, primeiro de tudo, vamos para o arquivo XAML do vet bit. Ali. Vamos ver um evento de clique desse botão de imagem. Agora, no arquivo acordeão, irá para este evento de clique. E eles usariam o prompt de exibição assíncrono. E esse prompt de exibição, uma cena, é basicamente um pop-up que será usado para aceitar a entrada do usuário. Vamos adicionar as palavras-chave async await. Esse prompt de exibição assíncrono usará muitos parâmetros, mas todos eles são opcionais exceto o título e a mensagem. Não precisamos de um título e uma mensagem. Então, adicionaremos a coluna de título e essa sequência vazia de passagem. Da mesma forma, a mensagem também passará uma string vazia. Agora, no espaço reservado, vamos adicionar a pesquisa, seja por cidade. Tudo bem. Esse prompt de exibição assíncrono conterá dois botões , exceto e cancelar. Se você quiser alterar o texto desses botões, poderá alterá-lo adequadamente. Digamos que queremos alterar o texto desse botão Aceitar. Então, vamos passar a pesquisa aqui. Não precisamos alterar o texto do botão de tração. Então, vamos simplesmente cancelar aqui. Tudo bem, agora vamos armazenar o resultado em uma variável e chamá-lo de resposta. Em seguida, verificaremos se a resposta não é nula. Em seguida, adicione um ponto de interrupção junto com essa condição if e simplesmente execute esse aplicativo. Ok, agora pressione este ícone de pesquisa e veremos esse pop-up. Vamos adicionar algo no pop-up. Em seguida, reprimiu essa opção de pesquisa. ponto de interrupção nunca será acionado e verá o texto aqui que digitamos no pop-up. Ok, vamos parar esse aplicativo e remover o ponto de interrupção. Agora, dentro desse bloco if, adicionaremos o código para obter os dados meteorológicos. Anteriormente, usamos esse código para obter os dados meteorológicos por localização. Agora, queremos obter os dados meteorológicos pelo nome da cidade. Então, o que vou fazer é copiar esse método de dados vetoriais para localização e colá-lo aqui. Agora vamos mudar o nome para obter dados meteorológicos por cidade. E dentro desse método, passaremos apenas um parâmetro do tipo string e o chamaremos de cidade. Então, em vez disso, get weather chamará o método get weather city junto com a classe de serviço da API e passará pela cidade. Não dentro disso, se estiver bloqueado. Vamos apenas chamar o veterinário pelo método dos dados por cidade. E não se esqueça de adicionar a espera. Agora, esse código funcionará. Mas dê uma olhada na repetição desse conjunto de dados em nosso código, por exemplo, o código que está presente nos dados meteorológicos intestinais por localização é semelhante a este que usamos para obter o clima. dados por cidade. Então, o que vamos fazer é adicionar outro método e chamá-lo de Atualizar UI. Nesse método, adicionaremos um parâmetro do tipo dinâmico e o chamaremos de resultado. Definimos o tipo dinâmico porque não sabemos o tipo de resposta que obteremos da API. Se você passar o cursor do mouse sobre esse resultado variável, ele mostrará o tipo que é a classe raiz. Mas continuaremos com o tipo dinâmico. Basicamente, os tipos dinâmicos são usados quando não sabemos o tipo. Ok? Você também pode usar essa rota aqui nas atualizações de um método. Em seguida, simplesmente recortaremos esse código desde o início, sejam dados por método de localização, e colaremos no método de atualização da interface do usuário. E removeremos a pontuação desde o início, sejam dados por cidade. Tudo bem. Em seguida, chamaremos o método de atualização da interface do usuário, obteremos os dados meteorológicos por localização e passaremos esse resultado. Da mesma forma, também chamaremos isso de atualização de método. Obtenha dados meteorológicos por cidade e passe esse resultado. Tudo bem, agora vamos ativar esse aplicativo. Aqui no dispositivo, verá os dados meteorológicos. Agora, se você tocar no ícone de pesquisa e pesquisar alguma cidade , obteremos o clima de acordo com nossa pesquisa. Tudo bem, isso é incrível. Agora, digamos que queremos voltar ao meu clima atual. Então, vou tocar aqui, sua localização. E boom, aqui vamos nós. Obteremos os dados meteorológicos atuais. Ok, isso é tudo desta lição. Agora eu vou te ver na próxima. 17. Crie a página de boas-vindas: Nesta lição, vamos trabalhar com a página de boas-vindas do aplicativo feather. E o usuário abrirá o aplicativo pela primeira vez. E ele verá esta página de boas-vindas ou página de introdução. Tudo bem, depois de pressionar esse botão que eles usam, ele será diretamente para a página. E aí você pode ver os detalhes das penas. Agora, digamos que o usuário feche o aplicativo. E, novamente, se ele abrir o aplicativo , dessa vez o usuário não verá a página de boas-vindas. Ok, então obteremos esse tipo de funcionalidade com o pH vertical que só será mostrado uma vez. Então, vamos criar uma nova página de conteúdo no projeto do filme Dalton. E nós a chamamos de página de boas-vindas. Tudo bem, neste espaço, vamos adicionar alguns controles. Primeiro de tudo, vamos definir a cor da página de conteúdo. Em seguida, adicionaremos um layout de pilha. E nesse layout de pilha adicionará uma imagem, três níveis e um controle de botão. O código é muito simples. Ali. Vou usar o código que eu já escrevi só para ver se é a hora. Não se preocupe, ouvi dizer que este exemplo de código foi fornecido junto com este vídeo. Ok, agora veja um evento de clique desse controle de botão. E aqui vamos nós. Neste evento de clique, queremos navegar até o campo federal. Então, vamos escolher o ponto de navegação, push, modal, async. Ali. Quem passou na outra página. Em seguida, no arquivo CSS do aplicativo dot symbol dot, definiremos que a página principal é igual à página de boas-vindas. Agora vamos executar esse aplicativo e veremos esta página de boas-vindas. Depois de pressionar este botão será redirecionado para a praia. Agora, ele interromperá o aplicativo e o executará novamente. Em seguida, veremos esta página de boas-vindas. Então, na próxima lição, mostrarei como exibir a página de boas-vindas apenas uma vez. Tudo bem, nos vemos na próxima lição. 18. Rastreamento de versões: Nesta lição, continuaremos nosso trabalho com a página de boas-vindas. Em seguida, o usuário abrirá o aplicativo pela primeira vez. Em seguida, mostraremos a página de boas-vindas. Há um usuário. E mais tarde, quando ele abrir o aplicativo pela segunda vez , ele não verá a página de boas-vindas. Então, para obter essa funcionalidade irá para o arquivo CSS do aplicativo dot dot. E eles usarão o método de rastreamento de pontos da classe de rastreamento de versão. Basicamente, esse rastreamento de versão é usado para rastrear a versão anterior do aplicativo. Isso faz parte de sete itens essenciais. E também há uma documentação desse rastreamento de versão. De acordo com este documento desta versão, o rastreamento de pontos é usado para rastrear a versão atual do aplicativo. Em seguida, usaremos uma condição if e verificaremos. Se o ponto de rastreamento de versão for lançado pela primeira vez, a propriedade é verdadeira. Em seguida, definiremos que a página intermediária é igual à página de boas-vindas. Outra coisa. Se não for verdade, definiremos que a página principal é igual à página meteorológica. Basicamente, esse ponto de rastreamento de versão é iniciado pela primeira vez e é usado para verificar se o aplicativo foi lançado pela primeira vez ou não. O aplicativo é lançado pela primeira vez. Em seguida, definiremos a base principal para a página de boas-vindas. E se o aplicativo for lançado pela segunda vez ou mais , definiremos a página principal como praia. Ok, vamos executar esse aplicativo. E aqui veremos a página de boas-vindas. Tudo bem, vamos seguir em frente e veremos a praia. Agora vamos parar a execução. E vamos executar esse aplicativo mais uma vez. Agora, desta vez, veremos a base de fornecedores como nossa parte principal. Tudo bem, espero que você tenha esse conceito de rastreamento de versão. Isso tudo é desta lição. Agora, te vejo na próxima.