SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Downloaden Sie, um offline zu lesen
ECOSYSTEM


1
Interação
                             Nokia Developer
            http://www.developer.nokia.com
                   Twitter: @nokiadev_brasil



        Grupo Devs S40 no Nokia Developer
        http://www.developer.nokia.com/Co
       mmunity/Discussion/group.php?grou
                                  pid=114




2
Como montar uma App
em diversas resoluções
de tela
Raymundo Junior
Desenvolvedor – INdT
Evangelista Nokia de Tecnologia



3
Conteúdo
• Resolução
• Devices S40
• Estrutura da App
• Arquivos CSS
• Trocando os Arquivos
• Dicas


4
Resolução




    320x240   240x320   240x400




5
Devices S40




    C3-00   X3-02   ASHA 311



6
Device S40
Nokia Developer
• http://www.developer.nokia.com/Devices/Device_sp
  ecifications/?filter1=s40




7
Estrutura da App




    Nessa estrutura temos as view dispostas uma ao lado da outra



8
Estrutura da App


    Área visível
    no display




                   Estado inicial da app



9
Estrutura da App

               Área visível
               no display




       Estado da app na segunda view



10
Estrutura da App
     DIV
      TABLE



           TD                 TD                   TD




                Visualização da estrutura HTML da página


11
Estrutura da App
     DIV .container
      TABLE .content



           TD                   TD                   TD




                  Visualização da estrutura HTML da página


12
Estrutura da App
<div id="container" class="container">
      <table id="content" class="content" cellpadding="0"
cellspacing="0" border="0">
              <tr>
                     <td></td>
                      <td></td>
                      <td></td>
              </tr>
     </table>
</div>




13
Estrutura da App

                      320x240            240x320           240x400
     .container   width:320px;       width:240px;       width:240px;
                  overflow:hidden;   overflow:hidden;   overflow:hidden;
     .content     width:960px;       width:720px;       width:720px;




14
Estrutura da App
     DIV .container
      TABLE .content

           TD             TD             TD

       TABLE .header   TABLE .header   TABLE .header



         DIV .view-     DIV .view-      DIV .view-
         content        content         content




15
Estrutura da App
<div id="container" class="container">
       <table id="content" class="content" cellpadding="0" cellspacing="0" border="0">
                 <tr>
                          <td>
                                    <table class=“header"></table>
                                    <div class=“view-content" ></div>
                          </td>
                          <td>
                                    <table class=“header"></table>
                                    <div class=“view-content" ></div>

                         </td>
                         <td>
                                  <table class=“header"></table>
                                  <div class=“view-content" ></div>

                         </td>
                 </tr>
      </table>
</div>

 16
Estrutura da App

                      320x240            240x320           240x400
     .container   width:320px;       width:240px;       width:240px;
                  overflow:hidden;   overflow:hidden;   overflow:hidden;
     .content     width:960px;       width:720px;       width:720px;
     .header      width:320px;       width:240px;       width:240px;
                  height:40px;       height:40px;       height:40px;
     .view-       width:320px;       width:320px;       width:320px;
     content




17
Estrutura da App
Propriedade CSS3 utilizada para animar a transição da
view:

-webkit-transition:margin-left 0.5s linear;

LINK:http://www.webkit.org/blog/138/css-animation/

Método mwl que efetua a troca das classes:

mwl.switchClass('#content','view*','view1');

LINK:http://www.developer.nokia.com/Resources/Libra
ry/Series_40_web_apps_library/technical-
library/descriptions-of-mwl-methods/switchclass.html

18
Estrutura da App

     TABLE .content   .view1 .view2 .view3




19
Estrutura da App
             mwl.switchClass('#content','view*','view1');

     TABLE .content .view1




20
Estrutura da App
             mwl.switchClass('#content','view*','view2');


     TABLE .content .view2




21
Estrutura da App
                               mwl.switchClass('#content','view*','view3');



            TABLE .content .view3




22   INdT 2012 | Filename.pptx v. 0.1 YYYY-MM-DD Author Document ID [Edit via Insert > Header & Footer]
Estrutura da App
<div id="container" class="container">
       <table id="content" class="content view1" cellpadding="0" cellspacing="0" border="0">
                 <tr>
                          <td>
                                    <table class=“header"></table>
                                    <div class=“view-content" ></div>
                          </td>
                          <td>
                                    <table class=“header"></table>
                                    <div class=“view-content" ></div>

                         </td>
                         <td>
                                  <table class=“header"></table>
                                  <div class=“view-content" ></div>

                         </td>
                 </tr>
      </table>
</div>

 23
Estrutura da App

                      320x240              240x320              240x400
     .container   -webkit-             -webkit-             -webkit-
                  transition:margin-   transition:margin-   transition:margin
                  left 0.5s linear;    left 0.5s linear;    -left 0.5s linear;
                  overflow:hidden;     overflow:hidden;     overflow:hidden;
                  width:320px;         width:240px;         width:240px;
     .content     width:960px;         width:720px;         width:720px;
     .header      width:320px;         width:240px;         width:240px;
                  height:40px;         height:40px;         height:40px;
     .view-       width:320px;         width:320px;         width:320px;
     content


24
Estrutura da App
                      320x240              240x320             240x400
      View1     Margin-left:0px;      Margin-left:0px;    Margin-left:0px;
      View2     Margin-left:-320px;   Margin-left:-240px; Margin-left:-240px;
      View3     Margin-left:-640px;   Margin-left:-480px; Margin-left:-480px;




     App no estado View1        App no estado View2      App no estado View3


25
Arquivos CSS

     landscape.css      portrait.css
        320x240      240x320 / 240x400




26
Trocando os arquivos CSS
if (screen.width > 240) {
     document.write('<link rel="stylesheet"
href="style/landscape.css“ type="text/css" />');
} else {
     document.write('<link rel="stylesheet"
href="style/portrait.css" type="text/css" />');
}




27
Dicas
•    Criar Layout que necessite de poucos ajustes
•    Usar poucas imagens na App
•    Recortar imagem nas dimensões finais
•    Redimensionar imagens proporcionalmente
•    Usar o método substr do javascript para
     encurtar textos




28
Obrigado!
Raymundo Junior
Desenvolvedor – INdT
Evangelista de Tecnologia

E-mail: raymundo.ferreira-junior@indt.org.br
Twitter: twitter.com/justkaws
Site: justkaws.com
Blog: blog.justkaws.com



29

Weitere ähnliche Inhalte

Ähnlich wie Como montar uma App em diversas resoluções de tela

Ähnlich wie Como montar uma App em diversas resoluções de tela (20)

Layouts e multiplas activities
Layouts e multiplas activitiesLayouts e multiplas activities
Layouts e multiplas activities
 
Componentes para a Web
Componentes para a WebComponentes para a Web
Componentes para a Web
 
Mini Curso - jQuery - FMU
Mini Curso - jQuery - FMUMini Curso - jQuery - FMU
Mini Curso - jQuery - FMU
 
Mini curso de c#.net
Mini curso de c#.netMini curso de c#.net
Mini curso de c#.net
 
Aula html5
Aula html5Aula html5
Aula html5
 
Android com estilo - GDG Dev Fest 2015
Android com estilo - GDG Dev Fest 2015Android com estilo - GDG Dev Fest 2015
Android com estilo - GDG Dev Fest 2015
 
XHTML Básico
XHTML BásicoXHTML Básico
XHTML Básico
 
Monografia Web 2.0
Monografia Web 2.0Monografia Web 2.0
Monografia Web 2.0
 
jQuery mobile
jQuery mobilejQuery mobile
jQuery mobile
 
Backbone.js nas trincheiras
Backbone.js nas trincheirasBackbone.js nas trincheiras
Backbone.js nas trincheiras
 
JSF com Primefaces
JSF com PrimefacesJSF com Primefaces
JSF com Primefaces
 
Gabarito ad1 web_2012_2
Gabarito ad1 web_2012_2Gabarito ad1 web_2012_2
Gabarito ad1 web_2012_2
 
Gráficos Vetoriais na Web com SVG
Gráficos Vetoriais na Web com SVGGráficos Vetoriais na Web com SVG
Gráficos Vetoriais na Web com SVG
 
LambdaDay: Backbone.js
LambdaDay: Backbone.jsLambdaDay: Backbone.js
LambdaDay: Backbone.js
 
Design Responsivo com Sass
Design Responsivo com SassDesign Responsivo com Sass
Design Responsivo com Sass
 
Cobol Web com Net Express 3.1/4.0/5.x - Parte 2
Cobol Web com Net Express 3.1/4.0/5.x - Parte 2Cobol Web com Net Express 3.1/4.0/5.x - Parte 2
Cobol Web com Net Express 3.1/4.0/5.x - Parte 2
 
Aula 20 div e spans
Aula 20 div e spansAula 20 div e spans
Aula 20 div e spans
 
Pew2012
Pew2012Pew2012
Pew2012
 
IoTizando com JavaScript
IoTizando com JavaScriptIoTizando com JavaScript
IoTizando com JavaScript
 
Html5
Html5Html5
Html5
 

Mehr von Microsoft Mobile Developer

Intro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and toolsIntro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and toolsMicrosoft Mobile Developer
 
Location based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagLocation based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagMicrosoft Mobile Developer
 
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsLumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsMicrosoft Mobile Developer
 
Windows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appWindows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appMicrosoft Mobile Developer
 
La pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeLa pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeMicrosoft Mobile Developer
 
Il pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoIl pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoMicrosoft Mobile Developer
 

Mehr von Microsoft Mobile Developer (20)

Intro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and toolsIntro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and tools
 
Lumia App Labs: Lumia SensorCore SDK beta
Lumia App Labs: Lumia SensorCore SDK betaLumia App Labs: Lumia SensorCore SDK beta
Lumia App Labs: Lumia SensorCore SDK beta
 
Nokia Asha from idea to app - Imaging
Nokia Asha from idea to app - ImagingNokia Asha from idea to app - Imaging
Nokia Asha from idea to app - Imaging
 
Healthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia AshaHealthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia Asha
 
Push notifications on Nokia X
Push notifications on Nokia XPush notifications on Nokia X
Push notifications on Nokia X
 
DIY Nokia Asha app usability studies
DIY Nokia Asha app usability studiesDIY Nokia Asha app usability studies
DIY Nokia Asha app usability studies
 
Lessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviewsLessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviews
 
Location based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagLocation based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tag
 
HERE Maps for the Nokia X platform
HERE Maps for the Nokia X platformHERE Maps for the Nokia X platform
HERE Maps for the Nokia X platform
 
Nokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerationsNokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerations
 
Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)
 
UX considerations when porting to Nokia X
UX considerations when porting to Nokia XUX considerations when porting to Nokia X
UX considerations when porting to Nokia X
 
Kids' games and educational app design
Kids' games and educational app designKids' games and educational app design
Kids' games and educational app design
 
Nokia X: opportunities for developers
Nokia X: opportunities for developersNokia X: opportunities for developers
Nokia X: opportunities for developers
 
Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1
 
Intro to Nokia X software platform and tools
Intro to Nokia X software platform and toolsIntro to Nokia X software platform and tools
Intro to Nokia X software platform and tools
 
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsLumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
 
Windows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appWindows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra app
 
La pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeLa pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo store
 
Il pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoIl pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progetto
 

Como montar uma App em diversas resoluções de tela

  • 2. Interação Nokia Developer http://www.developer.nokia.com Twitter: @nokiadev_brasil Grupo Devs S40 no Nokia Developer http://www.developer.nokia.com/Co mmunity/Discussion/group.php?grou pid=114 2
  • 3. Como montar uma App em diversas resoluções de tela Raymundo Junior Desenvolvedor – INdT Evangelista Nokia de Tecnologia 3
  • 4. Conteúdo • Resolução • Devices S40 • Estrutura da App • Arquivos CSS • Trocando os Arquivos • Dicas 4
  • 5. Resolução 320x240 240x320 240x400 5
  • 6. Devices S40 C3-00 X3-02 ASHA 311 6
  • 7. Device S40 Nokia Developer • http://www.developer.nokia.com/Devices/Device_sp ecifications/?filter1=s40 7
  • 8. Estrutura da App Nessa estrutura temos as view dispostas uma ao lado da outra 8
  • 9. Estrutura da App Área visível no display Estado inicial da app 9
  • 10. Estrutura da App Área visível no display Estado da app na segunda view 10
  • 11. Estrutura da App DIV TABLE TD TD TD Visualização da estrutura HTML da página 11
  • 12. Estrutura da App DIV .container TABLE .content TD TD TD Visualização da estrutura HTML da página 12
  • 13. Estrutura da App <div id="container" class="container"> <table id="content" class="content" cellpadding="0" cellspacing="0" border="0"> <tr> <td></td> <td></td> <td></td> </tr> </table> </div> 13
  • 14. Estrutura da App 320x240 240x320 240x400 .container width:320px; width:240px; width:240px; overflow:hidden; overflow:hidden; overflow:hidden; .content width:960px; width:720px; width:720px; 14
  • 15. Estrutura da App DIV .container TABLE .content TD TD TD TABLE .header TABLE .header TABLE .header DIV .view- DIV .view- DIV .view- content content content 15
  • 16. Estrutura da App <div id="container" class="container"> <table id="content" class="content" cellpadding="0" cellspacing="0" border="0"> <tr> <td> <table class=“header"></table> <div class=“view-content" ></div> </td> <td> <table class=“header"></table> <div class=“view-content" ></div> </td> <td> <table class=“header"></table> <div class=“view-content" ></div> </td> </tr> </table> </div> 16
  • 17. Estrutura da App 320x240 240x320 240x400 .container width:320px; width:240px; width:240px; overflow:hidden; overflow:hidden; overflow:hidden; .content width:960px; width:720px; width:720px; .header width:320px; width:240px; width:240px; height:40px; height:40px; height:40px; .view- width:320px; width:320px; width:320px; content 17
  • 18. Estrutura da App Propriedade CSS3 utilizada para animar a transição da view: -webkit-transition:margin-left 0.5s linear; LINK:http://www.webkit.org/blog/138/css-animation/ Método mwl que efetua a troca das classes: mwl.switchClass('#content','view*','view1'); LINK:http://www.developer.nokia.com/Resources/Libra ry/Series_40_web_apps_library/technical- library/descriptions-of-mwl-methods/switchclass.html 18
  • 19. Estrutura da App TABLE .content .view1 .view2 .view3 19
  • 20. Estrutura da App mwl.switchClass('#content','view*','view1'); TABLE .content .view1 20
  • 21. Estrutura da App mwl.switchClass('#content','view*','view2'); TABLE .content .view2 21
  • 22. Estrutura da App mwl.switchClass('#content','view*','view3'); TABLE .content .view3 22 INdT 2012 | Filename.pptx v. 0.1 YYYY-MM-DD Author Document ID [Edit via Insert > Header & Footer]
  • 23. Estrutura da App <div id="container" class="container"> <table id="content" class="content view1" cellpadding="0" cellspacing="0" border="0"> <tr> <td> <table class=“header"></table> <div class=“view-content" ></div> </td> <td> <table class=“header"></table> <div class=“view-content" ></div> </td> <td> <table class=“header"></table> <div class=“view-content" ></div> </td> </tr> </table> </div> 23
  • 24. Estrutura da App 320x240 240x320 240x400 .container -webkit- -webkit- -webkit- transition:margin- transition:margin- transition:margin left 0.5s linear; left 0.5s linear; -left 0.5s linear; overflow:hidden; overflow:hidden; overflow:hidden; width:320px; width:240px; width:240px; .content width:960px; width:720px; width:720px; .header width:320px; width:240px; width:240px; height:40px; height:40px; height:40px; .view- width:320px; width:320px; width:320px; content 24
  • 25. Estrutura da App 320x240 240x320 240x400 View1 Margin-left:0px; Margin-left:0px; Margin-left:0px; View2 Margin-left:-320px; Margin-left:-240px; Margin-left:-240px; View3 Margin-left:-640px; Margin-left:-480px; Margin-left:-480px; App no estado View1 App no estado View2 App no estado View3 25
  • 26. Arquivos CSS landscape.css portrait.css 320x240 240x320 / 240x400 26
  • 27. Trocando os arquivos CSS if (screen.width > 240) { document.write('<link rel="stylesheet" href="style/landscape.css“ type="text/css" />'); } else { document.write('<link rel="stylesheet" href="style/portrait.css" type="text/css" />'); } 27
  • 28. Dicas • Criar Layout que necessite de poucos ajustes • Usar poucas imagens na App • Recortar imagem nas dimensões finais • Redimensionar imagens proporcionalmente • Usar o método substr do javascript para encurtar textos 28
  • 29. Obrigado! Raymundo Junior Desenvolvedor – INdT Evangelista de Tecnologia E-mail: raymundo.ferreira-junior@indt.org.br Twitter: twitter.com/justkaws Site: justkaws.com Blog: blog.justkaws.com 29