SlideShare una empresa de Scribd logo
1 de 46
Mário Pimentel
  Severino
  Http://mozit.tv


@MarioPimentel



MarioPimentelJr



mariopimentel@mozit.tv
O que veremos nesse curso?
FOCO DO CURSO
• Silverlight
   – XAML
   – Binding
   – Controles
   – Blend e Visual Studio 2010
FOCO DO CURSO
• WP7
  – Criando uma aplicação com Silverlight
     •   Layouts
     •   Recursos do Aparelho
     •   Armazenamento local
     •   Ciclo de vida
     •   Serviços
  – Publicação no Market
Introdução ao
Windows phone 7 “Mango”
Visão geral do Windows Phone
      Nova plataforma mobile da Microsoft.
      Foco no usuário final
      Nova interface – Metro
         Interface também adotada no Windows 8.
      Utilização de HUBS
      Desenvolvimento .NET
      Windows Phone Marketplace.
Hardware do Windows Phone
    Padronização junto aos fabricantes.
    Mínimo: 256 MB RAM e 8 GB de storage
    Botões – Back (Voltar) , Start (Iniciar) e Search (Procurar)
    Tela – Multitouch capacitivo (800x480)
    Câmera – mínimo de 5 megapixels + flash
    Sensores e serviço
          Wi-fi
          Accelerometer
          Compass (Bússola)
          Location (GPS)
          Speech (Reconhecimento de voz)
          Vibration
          Push Notifications
Arquitetura do Windows Phone
Ciclo de Vida de Desenvolvimento
Introdução ao xaml
O que é XAML?
    • É uma linguagem de marcação.
    • Tecnologia de criação de interface do .NET
      Framework.
    • Disponível desde o .NET Framework 3.0
    • Criação de interface para as plataformas:
       –   WPF (Windows Presentation Foundation)
       –   Silverlight para Web
       –   Silverlight para Windows Phone
       –   Windows 8
Poderes e limitações do XAML
    •   É uma linguagem declarativa.
    •   Mais usada para criar e instanciar objetos.
    •   Templates
    •   Data Binding
    •   Animações/Efeitos de Transição
    •   Há coisas que só podem ser feitas no
        XAML, outras apenas no código e outras em
        ambas.
Sintaxe do XAML
    • Elementos do objeto
       – Um elemento do objeto declara a instância de um tipo
         (componente).
       – Para iniciar o objeto sempre começa com “<”, seguido
         do nome do objeto e finaliza com “>”.
       – Para fechar um objeto com conteúdo, começa com “</”.
       – Para fechar um objeto sem conteúdo, termina com “/>”.



     <StackPanel>
          <Button Content="Click Me"/>
     </StackPanel>
Sintaxe do XAML
   • Atributos (Propriedades)
       – Propriedades podem ser declaradas como
         atributos no XAML.

   <Button Background="Blue" Foreground="Red" Content="This is a button"/>
Elementos Contêiner
   • Facilita questão diversas do layout como
     posicionamento e redimensionamento.

   • Todos elementos de objeto precisam estar em
     pelo menos um Elemento Contêiner.

   • Alguns Elementos Contêiner são:
      – Grid
      – Canvas
      – StackPanel.
Elementos Contêiner
   • Canvas
      – Define uma área na qual os
      Elementos filhos podem definir
      coordenadas relativas a essa área.
      - Mais fácil de trabalhar com
      Posições X e Y.


   <Canvas Width="640" Height="480" Background="White">
          <Rectangle Canvas.Left="30" Canvas.Top="30" Fill="red"
                    Width="200" Height="200" />
   </Canvas>
Elementos Contêiner
   • Grid
     – Define uma área
       flexível que consiste
       em colunas e
       linhas..
                               <Grid Width="400" Height="300">
                                    <Grid.ColumnDefinitions>
                                    …
                                    </Grid.ColumnDefinitions>

                                   <Grid.RwDefinitions>
                                   ...
                                   </Grid.RowDefinitions>

                                   //Restante dos elementos

                               </Grid>
Elementos Contêiner
    • Grid
Elementos Contêiner
   • StackPanel
       – Organiza os elementos filhos em uma
         única linha que pode ser orientada
         horizontalmente ou verticalmente.




   <StackPanel Margin="20">
            <Rectangle Fill="Red" Width="50" Height="50" Margin="5" />
            <Rectangle Fill="Blue" Width="50" Height="50" Margin="5" />
            <Rectangle Fill="Green" Width="50" Height="50" Margin="5" />
            <Rectangle Fill="Purple" Width="50" Height="50" Margin="5" />
   </StackPanel>
Data binding
Data Binding
    • Disponibiliza uma forma simples para exibir
      dados no layout.
    • Estabelece uma conexão entre o UI e um
      objeto de dados.
       – Exemplo: Um usuário edita um TextBlock. O valor
         atribuido a esse elemento é automaticamente
         atualizado no objeto de origem também.
Data Binding
    • Exemplo:
     XAML
     <TextBox x:Name="MyTextBox" Text="Text"
     Foreground="{Binding Brush1, Mode=TwoWay}"/>


     Código

     MyColors textcolor = new MyColors();
     textcolor.Brush1 = new SolidColorBrush(Colors.Red);
     MyTextBox.DataContext = textcolor;
PANORAMA E PIVOT
Panorama
    • Oferece uma experiência única de ver controles, dados e
      serviços usando uma tela horizontal.
    • Não fica limitado ao tamanho da tela do Windows Phone.
    • O usuário tem a liberdade de navegar para esquerda ou
      direita.
Panorama
Panorama
    • PanoramaItem é o controle secundário que
      serve como contêiner para o conteúdo de
      um Panorama.
Pivot
   • Uma forma rápida de gerenciar layout ou páginas.
   • O usuário tem a liberdade de navegar para esquerda ou
     direita, mas não tem um pré-visualização da parte direita.
Pivot
Pivot
   • PivotItem é o controle secundário que serve como
     contêiner para o conteúdo de um Pivot.




                 Também é possível navegar tocando
                      nos títulos das páginas
CICLO DE VIDA
Ciclo de Vida
                              running




                  activated             deactivated




     Tombstoned               dormant
Ciclo de Vida
   • OnNavigatedTo
     – Chamado quando o usuário navega para a página.

   • OnNavigatedFrom
     – Chamado quando o usuário sai da página.
Ciclo de Vida
    • Desactived
       – Chamado quando o usuário:
           • Pressiona o botão Start
           • Muda para outro aplicativo.

    • Actived
       – Chamado quando o aplicativo retorna do estado:
           • Dormant.
           • Tombstoned.
Ciclo de Vida
     • Launching
        – Chamado quando o usuário:
            • Abre o programa pela lista de aplicativos
            • Abre o programa via Tile.
            • Recebe uma notificação pedindo para abrir o aplicativo e ele aceita.
     • Closing
        – Chamado quando o usuário aperta o botão “Back” do
          Windows Phone para sair do aplicativo.
Quando o
usuário
                 Ciclo de Vida   Quando o
                                 aplicativo é
aperta em                        aberto via
“Back” saindo                    lista, Tite ou
do aplicativo.                   Notification

                                  Quando o
                                  usuário
Quando o                          aperta em
usuário volta                     Start ou
ao aplicativo                     seleciona
apertando                         outro
“Back” ou                         aplicativo
quando                            aberto.
retorna de
Tombstoned
ou Dormant.
ISOLATED STORAGE
Isolated Storage
   • Permite armazenar dados no próprio
     Windows Phone.
   • Toda ação de armazenamento e leitura de
     dados locais está restrita ao Isolated Storage.
   • É mais seguro, reduz as chances de acessos
     não autorizados e erros.
Opções de armazenamento
   • É possível armazenar:
     – Chave/Valor: Gravar dados com o par
       key/value usando a classe
       IsolatedStorageSettings.
     – Arquivos e Pastas: Gravar arquivos e pastas
       usando a classe IsolatedStorageFile.
     – Dados relacionais: Gravar dados em um
       banco de dados local usando LINQ to SQL.
Opções de armazenamento
Opções de armazenamento
• Chave/Valor (IsolatedStorageSettings):
    Código

string NomeUsuario;

if( IsolatedStorageSettings.ApplicationSettings.TryGetValue<string>
("NomeUsuario", out NomeUsuario))
{

IsolatedStorageSettings.ApplicationSettings.Add("NomeUsuario",
"José");

}
Opções de armazenamento
• Arquivos/Pastas (IsolatedStorageSettings):
 Código

var store = IsolatedStorageFile.GetUserStoreForApplication()

store.CreateDirectory("MyApp1");
IsolatedStorageFileStream rootFile = store.CreateFile("InTheRoot.txt");
rootFile.Close();

if (store.FileExists(filePath)) {
            StreamWriter sw = new StreamWriter(
                   store.OpenFile( "InTheRoot.txt”, FileMode.Open,        . .
FileAccess.Write));
}
Opções de armazenamento

    • LINQ to SQL:


     Código

     var toDoItemsInDB = from ToDoItem todo in toDoDB.ToDoItems select todo;

     ToDoItems = new ObservableCollection<ToDoItem>(toDoItemsInDB);
DEMO
Mário Pimentel
                    Severino
                    Http://mozit.tv


                  @MarioPimentel



                  MarioPimentelJr



                  mariopimentel@mozit.tv
WINDOWS PHONE 7

Más contenido relacionado

Similar a Introdução ao Windows Phone 7

XML Free Programming - Brazil
XML Free Programming - BrazilXML Free Programming - Brazil
XML Free Programming - BrazilStephen Chin
 
Testes Funcionais e Estruturais utilizando Selenium IDE e Cobertura
Testes Funcionais e Estruturais utilizando Selenium IDE e CoberturaTestes Funcionais e Estruturais utilizando Selenium IDE e Cobertura
Testes Funcionais e Estruturais utilizando Selenium IDE e CoberturaTiago Antônio da Silva
 
Introdução Silverlight Windows Phone
Introdução Silverlight Windows PhoneIntrodução Silverlight Windows Phone
Introdução Silverlight Windows PhoneNuno Luz
 
Portando sua aplicação web para iphone
Portando sua aplicação web para iphonePortando sua aplicação web para iphone
Portando sua aplicação web para iphoneRenato Nitta
 
Aula03 android layouts_views
Aula03 android layouts_viewsAula03 android layouts_views
Aula03 android layouts_viewsRoberson Alves
 
JSF com Primefaces
JSF com PrimefacesJSF com Primefaces
JSF com PrimefacesFabio Noth
 
Desenvolvendo aplicacoes mobile_com_html_css_
Desenvolvendo aplicacoes mobile_com_html_css_Desenvolvendo aplicacoes mobile_com_html_css_
Desenvolvendo aplicacoes mobile_com_html_css_Rodrigo Urubatan
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorAllyson Barros
 
TechDay - Sistemas WEB em Java - Rogério N. Jr.
TechDay - Sistemas WEB em Java - Rogério N. Jr.TechDay - Sistemas WEB em Java - Rogério N. Jr.
TechDay - Sistemas WEB em Java - Rogério N. Jr.Rogério Napoleão Jr.
 
Java: Introducao ao Swing
Java: Introducao ao SwingJava: Introducao ao Swing
Java: Introducao ao SwingArthur Emanuel
 
Computação Móvel 2012.2 - Android
Computação Móvel 2012.2 - AndroidComputação Móvel 2012.2 - Android
Computação Móvel 2012.2 - AndroidTiago Bencardino
 
Tutorial eagle ptc_2008
Tutorial eagle ptc_2008Tutorial eagle ptc_2008
Tutorial eagle ptc_2008hajimaru
 
Processos iniciais do mapeamento OR
Processos iniciais do mapeamento ORProcessos iniciais do mapeamento OR
Processos iniciais do mapeamento ORNécio de Lima Veras
 
Aulas Google Android
Aulas Google AndroidAulas Google Android
Aulas Google AndroidIury Teixeira
 
Backbone.js nas trincheiras
Backbone.js nas trincheirasBackbone.js nas trincheiras
Backbone.js nas trincheirasLambda 3
 

Similar a Introdução ao Windows Phone 7 (20)

XML Free Programming - Brazil
XML Free Programming - BrazilXML Free Programming - Brazil
XML Free Programming - Brazil
 
Testes Funcionais e Estruturais utilizando Selenium IDE e Cobertura
Testes Funcionais e Estruturais utilizando Selenium IDE e CoberturaTestes Funcionais e Estruturais utilizando Selenium IDE e Cobertura
Testes Funcionais e Estruturais utilizando Selenium IDE e Cobertura
 
Palestra
PalestraPalestra
Palestra
 
Introdução Silverlight Windows Phone
Introdução Silverlight Windows PhoneIntrodução Silverlight Windows Phone
Introdução Silverlight Windows Phone
 
Portando sua aplicação web para iphone
Portando sua aplicação web para iphonePortando sua aplicação web para iphone
Portando sua aplicação web para iphone
 
Aula03 android layouts_views
Aula03 android layouts_viewsAula03 android layouts_views
Aula03 android layouts_views
 
JSF com Primefaces
JSF com PrimefacesJSF com Primefaces
JSF com Primefaces
 
Desenvolvendo aplicacoes mobile_com_html_css_
Desenvolvendo aplicacoes mobile_com_html_css_Desenvolvendo aplicacoes mobile_com_html_css_
Desenvolvendo aplicacoes mobile_com_html_css_
 
Web 3.0
Web 3.0Web 3.0
Web 3.0
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
 
TechDay - Sistemas WEB em Java - Rogério N. Jr.
TechDay - Sistemas WEB em Java - Rogério N. Jr.TechDay - Sistemas WEB em Java - Rogério N. Jr.
TechDay - Sistemas WEB em Java - Rogério N. Jr.
 
Intro javame
Intro javameIntro javame
Intro javame
 
Java: Introducao ao Swing
Java: Introducao ao SwingJava: Introducao ao Swing
Java: Introducao ao Swing
 
Jj08 otimizacao
Jj08 otimizacaoJj08 otimizacao
Jj08 otimizacao
 
Computação Móvel 2012.2 - Android
Computação Móvel 2012.2 - AndroidComputação Móvel 2012.2 - Android
Computação Móvel 2012.2 - Android
 
Tutorial eagle ptc_2008
Tutorial eagle ptc_2008Tutorial eagle ptc_2008
Tutorial eagle ptc_2008
 
Processos iniciais do mapeamento OR
Processos iniciais do mapeamento ORProcessos iniciais do mapeamento OR
Processos iniciais do mapeamento OR
 
Aulas Google Android
Aulas Google AndroidAulas Google Android
Aulas Google Android
 
Backbone.js nas trincheiras
Backbone.js nas trincheirasBackbone.js nas trincheiras
Backbone.js nas trincheiras
 
Jboss Seam
Jboss SeamJboss Seam
Jboss Seam
 

Último

o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfCamillaBrito19
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfHELENO FAVACHO
 
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaPROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaHELENO FAVACHO
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxLuizHenriquedeAlmeid6
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfHELENO FAVACHO
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdfLeloIurk1
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdfAna Lemos
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfHELENO FAVACHO
 
Historia da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdfHistoria da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdfEmanuel Pio
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médiorosenilrucks
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...azulassessoria9
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)ElliotFerreira
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfFrancisco Márcio Bezerra Oliveira
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfHELENO FAVACHO
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Ilda Bicacro
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfHELENO FAVACHO
 
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSOLeloIurk1
 

Último (20)

o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdf
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
 
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaPROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdf
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
 
Historia da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdfHistoria da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdf
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
 
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
 

Introdução ao Windows Phone 7

  • 1.
  • 2. Mário Pimentel Severino Http://mozit.tv @MarioPimentel MarioPimentelJr mariopimentel@mozit.tv
  • 3. O que veremos nesse curso?
  • 4. FOCO DO CURSO • Silverlight – XAML – Binding – Controles – Blend e Visual Studio 2010
  • 5. FOCO DO CURSO • WP7 – Criando uma aplicação com Silverlight • Layouts • Recursos do Aparelho • Armazenamento local • Ciclo de vida • Serviços – Publicação no Market
  • 6.
  • 8. Visão geral do Windows Phone  Nova plataforma mobile da Microsoft.  Foco no usuário final  Nova interface – Metro  Interface também adotada no Windows 8.  Utilização de HUBS  Desenvolvimento .NET  Windows Phone Marketplace.
  • 9. Hardware do Windows Phone Padronização junto aos fabricantes. Mínimo: 256 MB RAM e 8 GB de storage Botões – Back (Voltar) , Start (Iniciar) e Search (Procurar) Tela – Multitouch capacitivo (800x480) Câmera – mínimo de 5 megapixels + flash Sensores e serviço  Wi-fi  Accelerometer  Compass (Bússola)  Location (GPS)  Speech (Reconhecimento de voz)  Vibration  Push Notifications
  • 11. Ciclo de Vida de Desenvolvimento
  • 13. O que é XAML? • É uma linguagem de marcação. • Tecnologia de criação de interface do .NET Framework. • Disponível desde o .NET Framework 3.0 • Criação de interface para as plataformas: – WPF (Windows Presentation Foundation) – Silverlight para Web – Silverlight para Windows Phone – Windows 8
  • 14. Poderes e limitações do XAML • É uma linguagem declarativa. • Mais usada para criar e instanciar objetos. • Templates • Data Binding • Animações/Efeitos de Transição • Há coisas que só podem ser feitas no XAML, outras apenas no código e outras em ambas.
  • 15. Sintaxe do XAML • Elementos do objeto – Um elemento do objeto declara a instância de um tipo (componente). – Para iniciar o objeto sempre começa com “<”, seguido do nome do objeto e finaliza com “>”. – Para fechar um objeto com conteúdo, começa com “</”. – Para fechar um objeto sem conteúdo, termina com “/>”. <StackPanel> <Button Content="Click Me"/> </StackPanel>
  • 16. Sintaxe do XAML • Atributos (Propriedades) – Propriedades podem ser declaradas como atributos no XAML. <Button Background="Blue" Foreground="Red" Content="This is a button"/>
  • 17. Elementos Contêiner • Facilita questão diversas do layout como posicionamento e redimensionamento. • Todos elementos de objeto precisam estar em pelo menos um Elemento Contêiner. • Alguns Elementos Contêiner são: – Grid – Canvas – StackPanel.
  • 18. Elementos Contêiner • Canvas – Define uma área na qual os Elementos filhos podem definir coordenadas relativas a essa área. - Mais fácil de trabalhar com Posições X e Y. <Canvas Width="640" Height="480" Background="White"> <Rectangle Canvas.Left="30" Canvas.Top="30" Fill="red" Width="200" Height="200" /> </Canvas>
  • 19. Elementos Contêiner • Grid – Define uma área flexível que consiste em colunas e linhas.. <Grid Width="400" Height="300"> <Grid.ColumnDefinitions> … </Grid.ColumnDefinitions> <Grid.RwDefinitions> ... </Grid.RowDefinitions> //Restante dos elementos </Grid>
  • 21. Elementos Contêiner • StackPanel – Organiza os elementos filhos em uma única linha que pode ser orientada horizontalmente ou verticalmente. <StackPanel Margin="20"> <Rectangle Fill="Red" Width="50" Height="50" Margin="5" /> <Rectangle Fill="Blue" Width="50" Height="50" Margin="5" /> <Rectangle Fill="Green" Width="50" Height="50" Margin="5" /> <Rectangle Fill="Purple" Width="50" Height="50" Margin="5" /> </StackPanel>
  • 23. Data Binding • Disponibiliza uma forma simples para exibir dados no layout. • Estabelece uma conexão entre o UI e um objeto de dados. – Exemplo: Um usuário edita um TextBlock. O valor atribuido a esse elemento é automaticamente atualizado no objeto de origem também.
  • 24. Data Binding • Exemplo: XAML <TextBox x:Name="MyTextBox" Text="Text" Foreground="{Binding Brush1, Mode=TwoWay}"/> Código MyColors textcolor = new MyColors(); textcolor.Brush1 = new SolidColorBrush(Colors.Red); MyTextBox.DataContext = textcolor;
  • 26. Panorama • Oferece uma experiência única de ver controles, dados e serviços usando uma tela horizontal. • Não fica limitado ao tamanho da tela do Windows Phone. • O usuário tem a liberdade de navegar para esquerda ou direita.
  • 28. Panorama • PanoramaItem é o controle secundário que serve como contêiner para o conteúdo de um Panorama.
  • 29. Pivot • Uma forma rápida de gerenciar layout ou páginas. • O usuário tem a liberdade de navegar para esquerda ou direita, mas não tem um pré-visualização da parte direita.
  • 30. Pivot
  • 31. Pivot • PivotItem é o controle secundário que serve como contêiner para o conteúdo de um Pivot. Também é possível navegar tocando nos títulos das páginas
  • 33. Ciclo de Vida running activated deactivated Tombstoned dormant
  • 34. Ciclo de Vida • OnNavigatedTo – Chamado quando o usuário navega para a página. • OnNavigatedFrom – Chamado quando o usuário sai da página.
  • 35. Ciclo de Vida • Desactived – Chamado quando o usuário: • Pressiona o botão Start • Muda para outro aplicativo. • Actived – Chamado quando o aplicativo retorna do estado: • Dormant. • Tombstoned.
  • 36. Ciclo de Vida • Launching – Chamado quando o usuário: • Abre o programa pela lista de aplicativos • Abre o programa via Tile. • Recebe uma notificação pedindo para abrir o aplicativo e ele aceita. • Closing – Chamado quando o usuário aperta o botão “Back” do Windows Phone para sair do aplicativo.
  • 37. Quando o usuário Ciclo de Vida Quando o aplicativo é aperta em aberto via “Back” saindo lista, Tite ou do aplicativo. Notification Quando o usuário Quando o aperta em usuário volta Start ou ao aplicativo seleciona apertando outro “Back” ou aplicativo quando aberto. retorna de Tombstoned ou Dormant.
  • 39. Isolated Storage • Permite armazenar dados no próprio Windows Phone. • Toda ação de armazenamento e leitura de dados locais está restrita ao Isolated Storage. • É mais seguro, reduz as chances de acessos não autorizados e erros.
  • 40. Opções de armazenamento • É possível armazenar: – Chave/Valor: Gravar dados com o par key/value usando a classe IsolatedStorageSettings. – Arquivos e Pastas: Gravar arquivos e pastas usando a classe IsolatedStorageFile. – Dados relacionais: Gravar dados em um banco de dados local usando LINQ to SQL.
  • 42. Opções de armazenamento • Chave/Valor (IsolatedStorageSettings): Código string NomeUsuario; if( IsolatedStorageSettings.ApplicationSettings.TryGetValue<string> ("NomeUsuario", out NomeUsuario)) { IsolatedStorageSettings.ApplicationSettings.Add("NomeUsuario", "José"); }
  • 43. Opções de armazenamento • Arquivos/Pastas (IsolatedStorageSettings): Código var store = IsolatedStorageFile.GetUserStoreForApplication() store.CreateDirectory("MyApp1"); IsolatedStorageFileStream rootFile = store.CreateFile("InTheRoot.txt"); rootFile.Close(); if (store.FileExists(filePath)) { StreamWriter sw = new StreamWriter( store.OpenFile( "InTheRoot.txt”, FileMode.Open, . . FileAccess.Write)); }
  • 44. Opções de armazenamento • LINQ to SQL: Código var toDoItemsInDB = from ToDoItem todo in toDoDB.ToDoItems select todo; ToDoItems = new ObservableCollection<ToDoItem>(toDoItemsInDB);
  • 45. DEMO
  • 46. Mário Pimentel Severino Http://mozit.tv @MarioPimentel MarioPimentelJr mariopimentel@mozit.tv WINDOWS PHONE 7