SlideShare ist ein Scribd-Unternehmen logo
1 von 49
Downloaden Sie, um offline zu lesen
Ako začať s programovaním
                     pre Android


08.11.2012              Rudolf Halmi     1
Osnova

                 Nástroje

             Začíname s vývojom

                 Tipy a triky

             Hrabeme sa v kóde
08.11.2012         Rudolf Halmi   2
Nástroje
                Inštalácia Ubuntu 12.10
             http://www.ubuntu.com/download/desktop


                           ●Java
                  ●   Android SDK tools
                       ● Intellij Idea




08.11.2012               Rudolf Halmi                 3
Java
●   sudo add-apt-repository ppa:webupd8team/java
●   sudo apt-get update
●   sudo apt-get install oracle-java7-installer
●   sudo update-java-alternatives -s java-7-oracle




08.11.2012                          Rudolf Halmi     4
Intellij Idea & Android SDK

     IntelliJ Idea – community edition
 ●   http://www.jetbrains.com/idea/download/index.html


     Android SDK tools
 ●   http://developer.android.com/sdk/index.html




08.11.2012                  Rudolf Halmi                 5
Stiahnutie SDK API
 ●   Spustíme si android-sdk-linux/tools ./android




08.11.2012               Rudolf Halmi                6
Stiahnutie SDK API




08.11.2012          Rudolf Halmi   7
Spustenie Idei
 ●   Pri prvom spustení nič neimportujem




08.11.2012              Rudolf Halmi       8
Idea




08.11.2012   Rudolf Halmi   9
Začíname s vývojom

                   ●      Konfigurácia Idei
                           ●   Nový projekt
             ●   Popis adresárov projektu
                  ●    64 bitový problém
                      ●    Vytvorenie AVD
                       ●       Spustenie app



08.11.2012                       Rudolf Halmi   10
Konfigurácia Idei

 ●   Konfigurácia SDK
      ●      File → Project Structure
      ●      Add new SDK

 ●   Najprv cesta k Jave
      ●      /usr/lib/jvm/java-7-oracle

 ●   Potom k Android SDK

08.11.2012                        Rudolf Halmi   11
Nový projekt
 ●   Klikneme na Create new project




 ●   A potom na Create project from scratch




08.11.2012              Rudolf Halmi          12
Nový projekt
 ●   Vyplníme formulár




08.11.2012               Rudolf Halmi   13
Popis adresárov projektu
 ●   Assets – priamy prístup
 ●   Bin - kompilovane
 ●   Gen – generovane R
 ●   Res - resource
 ●   Src - zdrojaky
 ●   AndroidManifest.xml



08.11.2012               Rudolf Halmi   14
64 bitový problém
 ●   Pri pokuse o spustení app ADB sa nedá spustiť
 ●   Nutné doinštalovať ia32-libs




08.11.2012               Rudolf Halmi            15
Vytvorenie AVD
 ●   Po kliknutí na zelenú ikonu (play)


 ●   Sa otvorí okno na spustenie app




08.11.2012               Rudolf Halmi     16
Vytvorenie AVD
 ●   Klikneme na NEW




08.11.2012             Rudolf Halmi   17
●   Zvolíme si API
 ●   Veľkosť SD karty
 ●   Rozlíšenie
 ●   Príp. ďalšie
     parametre




08.11.2012              Rudolf Halmi   18
Vytvorenie AVD
 ●   Hláška potvrdí vytvorenie emulátora




08.11.2012              Rudolf Halmi       19
Spustenie app
 ●   Späť v okne spustenia app si zvolíme emulátor




08.11.2012              Rudolf Halmi                 20
Spustenie app




08.11.2012       Rudolf Halmi   21
Tipy a triky
             ●   Popis res adresárov
                        ●   Layouty
                 ●   WYSIWYG editor
             ●       Rozmery widgetov
                        ●       Stringy
                            ●   Farby
                       ●    Obrázky
                            ●   Tvary
08.11.2012                  Rudolf Halmi   22
Popis res adresárov
 ●   Anim
 ●   Drawable
 ●   Layout
 ●   Raw
 ●   Values
 ●   Xml

     http://developer.android.com/training/basics/supporting-devices/index.html

08.11.2012                           Rudolf Halmi                                 23
Layouty
 ●   Programovo alebo XML
 ●   GUI prvky sa volajú Widgety
 ●   Priradenie ID cez android:id
 ●   Jeden root layout, v ňom widgety, alebo
     vnorené layouty

 ●   LinearLayout
 ●   RelativeLayout
08.11.2012               Rudolf Halmi          24
LinearLayout
     Vertikálny                      Horizontálny




08.11.2012            Rudolf Halmi                  25
RelativeLayout
     Vrstvy                       Relatívna pozícia




08.11.2012         Rudolf Halmi                       26
WYSIWYG editor
 ●   Ak sa mi nechce písať XML
 ●   Ak chcem rýchlo spraviť koncept GUI
 ●   Eclipse - UI designer v ADT
 ●   DroidDraw
      ●      Java v browseri
      ●      Standalone app – Linux, Mac, Win




08.11.2012                     Rudolf Halmi     27
WYSIWYG editor – DroidDraw




08.11.2012          Rudolf Halmi      28
Rozmery widgetov
 ●   layout_width a layout_height
      ●      wrap_content
      ●      fill_parent (match_parent)
      ●      Rozmer a jednotka
             –   http://developer.android.com/guide/topics/resources/more-resources.html#Dimension
      ●      Dip – density
             independent pixels




08.11.2012                                    Rudolf Halmi                                       29
Rozmery widgetov
 ●   Dip




08.11.2012         Rudolf Halmi   30
Rozmery widgetov
 ●   Referencia z xml súboru
 ●   Vytvoríme si /values/dimensions.xml
             <resources>
                <dimen name="text_width">100dip</dimen>
             </resources>
 ●   Priradíme widgetu:
     layout_width="@dimen/text_width"
 ●   Pre rôzne konfigurácie
     rôzne veľkosti
08.11.2012                     Rudolf Halmi               31
Stringy
 ●   Pridáme si do layoutu EditText




 ●   Nie je dobré vpisovať stringy priamo do layoutu
 ●   Otvoríme si /values/strings.xml a pridáme



08.11.2012              Rudolf Halmi               32
Stringy
 ●   Tieto texty priradíme widgetom




08.11.2012              Rudolf Halmi   33
Farby
 ●   Vytvoríme si /values/colors.xml
 ●   Pridáme si novú farbu

 ●   4 Hexa hodnoty (00 - FF)
      ●      FF – priehľadnosť
      ●      ED – červená zložka
      ●      CB – zelená zložka
      ●      40 – modrá zložka

08.11.2012                        Rudolf Halmi   34
Farby
 ●   Priradenie v layoute:




 ●   http://colorschemedesigner.com/
08.11.2012               Rudolf Halmi   35
Obrázky
 ●   Zmena pozadia buttonu – nine patch
     http://developer.android.com/tools/help/draw9patch.html
 ●   Button má rôzne stavy → XML
     /drawable/mybutton.xml




08.11.2012                       Rudolf Halmi                  36
Obrázky
 ●   Priradenie novej grafiky buttonu:




08.11.2012               Rudolf Halmi    37
Tvary
 ●   Namiesto obrázkov použijeme v xml
     zadefinovaný tvar
 ●   Zaoblené rohy
 ●   Gradient 3 farieb
 ●   Zadefinujeme si 3 nové farby do colors.xml




08.11.2012               Rudolf Halmi             38
Tvary
 ●   Vytvoríme si /res/drawable/mygradient.xml




08.11.2012              Rudolf Halmi             39
Tvary
 ●   Priradíme ho nášmu root Layoutu a
     vycentrujeme




08.11.2012             Rudolf Halmi      40
Hrabeme sa v kóde


                  ●   Životný cyklus aplikácií
                       ●   OnClickListener
             ●   Implementácia metódy onClick




08.11.2012                    Rudolf Halmi       41
Životný cyklus aplikácií
 ●   Otvoríme si MyActivity.java
 ●   Vidíme metódu onCreate, existujú aj ďalšie




08.11.2012               Rudolf Halmi             42
Životný cyklus aplikácií
 ●   http://developer.android.com/training/basics/activity-lifecycle/index.html




08.11.2012                            Rudolf Halmi                                43
OnClickListener
 ●   Overridneme si metódu onStart() a
     zaregistrujeme si OnClickListener na Button




 ●   Pripravíme si referencie na widgety



08.11.2012              Rudolf Halmi               44
OnClickListener
 ●   Nainicializujeme si ich v onStart




08.11.2012               Rudolf Halmi    45
Implementácia metódy onClick
 ●   Pridáme si kontrolnú hlášku do stringov

 ●   Doplníme kód metódy onClick




08.11.2012              Rudolf Halmi           46
Implementácia metódy onClick
     Prázdne meno                      Vyplnené meno




08.11.2012              Rudolf Halmi                   47
Ešte pár linkov
 ●   NazdarSvet: http://goo.gl/dU13y
 ●   Prezentácia: http://goo.gl/wZ2TU

 ●   http://www.mojandroid.sk/vyvoj-android-aplikacii/piseme-prvu-android-aplikaciu

 ●   http://developer.android.com/sdk/installing/index.html
 ●   http://developer.android.com/about/dashboards/index.html
 ●   http://developer.android.com/training/index.html
 ●   http://developer.android.com/guide/components/index.html
 ●   http://www.droiddraw.org/
08.11.2012                              Rudolf Halmi                                  48
Ďakujem za pozornosť




             V prípade otázok: rootko@gmail.com
                 alebo aj ak robíte grafiku :)




08.11.2012                 Rudolf Halmi           49

Weitere ähnliche Inhalte

Andere mochten auch

Circuito Hidráulico
Circuito HidráulicoCircuito Hidráulico
Circuito HidráulicoFFittech
 
Guida al computer - Lezione 75 - La Posta Elettronica Parte 2
Guida al computer - Lezione 75 - La Posta Elettronica Parte 2Guida al computer - Lezione 75 - La Posta Elettronica Parte 2
Guida al computer - Lezione 75 - La Posta Elettronica Parte 2caioturtle
 
Mapeamento dos Pontos Vulneráveis à Exploração Sexual de Crianças e Adolescen...
Mapeamento dos Pontos Vulneráveis à Exploração Sexual de Crianças e Adolescen...Mapeamento dos Pontos Vulneráveis à Exploração Sexual de Crianças e Adolescen...
Mapeamento dos Pontos Vulneráveis à Exploração Sexual de Crianças e Adolescen...Palácio do Planalto
 
ApresentaçãO De Resultados 1 T09
ApresentaçãO De Resultados 1 T09ApresentaçãO De Resultados 1 T09
ApresentaçãO De Resultados 1 T09Profarma
 
Raçadores Holandes para leite 2009
Raçadores Holandes para leite 2009 Raçadores Holandes para leite 2009
Raçadores Holandes para leite 2009 Nova India Genetica
 
Psühhiaatria tutvustus eesti keeles - Satakunna tervishoiupiirkond
Psühhiaatria tutvustus eesti keeles -  Satakunna tervishoiupiirkondPsühhiaatria tutvustus eesti keeles -  Satakunna tervishoiupiirkond
Psühhiaatria tutvustus eesti keeles - Satakunna tervishoiupiirkondSatakunnan sairaanhoitopiiri
 
Profarma apimec 3_t10
Profarma apimec 3_t10Profarma apimec 3_t10
Profarma apimec 3_t10Profarma
 
Divulgação de Resultados 2T14
Divulgação de Resultados 2T14Divulgação de Resultados 2T14
Divulgação de Resultados 2T14Profarma
 
Laboratorio iii sistemas de informacion empresarial - iván jara, alexis qui...
Laboratorio iii   sistemas de informacion empresarial - iván jara, alexis qui...Laboratorio iii   sistemas de informacion empresarial - iván jara, alexis qui...
Laboratorio iii sistemas de informacion empresarial - iván jara, alexis qui...Alexis Quintana Isla
 
Inhout 35 Jongeneel Houthandel en Bouwmaterialen
Inhout 35 Jongeneel Houthandel en BouwmaterialenInhout 35 Jongeneel Houthandel en Bouwmaterialen
Inhout 35 Jongeneel Houthandel en BouwmaterialenKon. Jongeneel BV
 
Ministério da Justiça - Apresentação do comparativo de documentos no caso Sie...
Ministério da Justiça - Apresentação do comparativo de documentos no caso Sie...Ministério da Justiça - Apresentação do comparativo de documentos no caso Sie...
Ministério da Justiça - Apresentação do comparativo de documentos no caso Sie...Palácio do Planalto
 
Järjestö sosiaalisessa mediassa
Järjestö sosiaalisessa mediassa Järjestö sosiaalisessa mediassa
Järjestö sosiaalisessa mediassa Piritta Seppälä
 

Andere mochten auch (20)

Circuito Hidráulico
Circuito HidráulicoCircuito Hidráulico
Circuito Hidráulico
 
"7Dì" 9 dicembre 2012
"7Dì"  9 dicembre 2012"7Dì"  9 dicembre 2012
"7Dì" 9 dicembre 2012
 
Guida al computer - Lezione 75 - La Posta Elettronica Parte 2
Guida al computer - Lezione 75 - La Posta Elettronica Parte 2Guida al computer - Lezione 75 - La Posta Elettronica Parte 2
Guida al computer - Lezione 75 - La Posta Elettronica Parte 2
 
Śniadanie Daje Moc
Śniadanie Daje MocŚniadanie Daje Moc
Śniadanie Daje Moc
 
Mapeamento dos Pontos Vulneráveis à Exploração Sexual de Crianças e Adolescen...
Mapeamento dos Pontos Vulneráveis à Exploração Sexual de Crianças e Adolescen...Mapeamento dos Pontos Vulneráveis à Exploração Sexual de Crianças e Adolescen...
Mapeamento dos Pontos Vulneráveis à Exploração Sexual de Crianças e Adolescen...
 
ApresentaçãO De Resultados 1 T09
ApresentaçãO De Resultados 1 T09ApresentaçãO De Resultados 1 T09
ApresentaçãO De Resultados 1 T09
 
WEB 2.0 MUSIKA GELAN
WEB 2.0 MUSIKA GELANWEB 2.0 MUSIKA GELAN
WEB 2.0 MUSIKA GELAN
 
SACT_2011
SACT_2011SACT_2011
SACT_2011
 
Raçadores Holandes para leite 2009
Raçadores Holandes para leite 2009 Raçadores Holandes para leite 2009
Raçadores Holandes para leite 2009
 
Tarea Kelly[1]
Tarea Kelly[1]Tarea Kelly[1]
Tarea Kelly[1]
 
Psühhiaatria tutvustus eesti keeles - Satakunna tervishoiupiirkond
Psühhiaatria tutvustus eesti keeles -  Satakunna tervishoiupiirkondPsühhiaatria tutvustus eesti keeles -  Satakunna tervishoiupiirkond
Psühhiaatria tutvustus eesti keeles - Satakunna tervishoiupiirkond
 
Profarma apimec 3_t10
Profarma apimec 3_t10Profarma apimec 3_t10
Profarma apimec 3_t10
 
Divulgação de Resultados 2T14
Divulgação de Resultados 2T14Divulgação de Resultados 2T14
Divulgação de Resultados 2T14
 
Laboratorio iii sistemas de informacion empresarial - iván jara, alexis qui...
Laboratorio iii   sistemas de informacion empresarial - iván jara, alexis qui...Laboratorio iii   sistemas de informacion empresarial - iván jara, alexis qui...
Laboratorio iii sistemas de informacion empresarial - iván jara, alexis qui...
 
Śniadanie Daje Moc
Śniadanie Daje MocŚniadanie Daje Moc
Śniadanie Daje Moc
 
Inhout 35 Jongeneel Houthandel en Bouwmaterialen
Inhout 35 Jongeneel Houthandel en BouwmaterialenInhout 35 Jongeneel Houthandel en Bouwmaterialen
Inhout 35 Jongeneel Houthandel en Bouwmaterialen
 
Ministério da Justiça - Apresentação do comparativo de documentos no caso Sie...
Ministério da Justiça - Apresentação do comparativo de documentos no caso Sie...Ministério da Justiça - Apresentação do comparativo de documentos no caso Sie...
Ministério da Justiça - Apresentação do comparativo de documentos no caso Sie...
 
Tec
TecTec
Tec
 
Booosting 22nov12 creatief cluster delft cepezed
Booosting 22nov12 creatief cluster delft  cepezedBooosting 22nov12 creatief cluster delft  cepezed
Booosting 22nov12 creatief cluster delft cepezed
 
Järjestö sosiaalisessa mediassa
Järjestö sosiaalisessa mediassa Järjestö sosiaalisessa mediassa
Järjestö sosiaalisessa mediassa
 

Mehr von Michal Chabada

MojAndroid.sk: Wordpress meetup ba 10/2014
MojAndroid.sk: Wordpress meetup ba 10/2014MojAndroid.sk: Wordpress meetup ba 10/2014
MojAndroid.sk: Wordpress meetup ba 10/2014Michal Chabada
 
Martin Adamek: Ako byť úspešný so svojou aplikáciou na Google Play Store [A...
Martin Adamek: Ako byť úspešný so  svojou aplikáciou na  Google Play Store [A...Martin Adamek: Ako byť úspešný so  svojou aplikáciou na  Google Play Store [A...
Martin Adamek: Ako byť úspešný so svojou aplikáciou na Google Play Store [A...Michal Chabada
 
Richard Mihalovic: Ako zarobit na svojej aplikacii a predat ju do zahranicia ...
Richard Mihalovic: Ako zarobit na svojej aplikacii a predat ju do zahranicia ...Richard Mihalovic: Ako zarobit na svojej aplikacii a predat ju do zahranicia ...
Richard Mihalovic: Ako zarobit na svojej aplikacii a predat ju do zahranicia ...Michal Chabada
 
Pragmatic Mates: Dizajn Android aplikácií
Pragmatic Mates: Dizajn Android aplikáciíPragmatic Mates: Dizajn Android aplikácií
Pragmatic Mates: Dizajn Android aplikáciíMichal Chabada
 
Matúš Jančík: Programuj rýchlejšie, meraj presnejšie
Matúš Jančík: Programuj rýchlejšie, meraj presnejšieMatúš Jančík: Programuj rýchlejšie, meraj presnejšie
Matúš Jančík: Programuj rýchlejšie, meraj presnejšieMichal Chabada
 
Daniel Novak: Android na full-time
Daniel Novak: Android na full-timeDaniel Novak: Android na full-time
Daniel Novak: Android na full-timeMichal Chabada
 
Android code 2011: najlepsie slovenske Android aplikacie
Android code 2011: najlepsie slovenske Android aplikacieAndroid code 2011: najlepsie slovenske Android aplikacie
Android code 2011: najlepsie slovenske Android aplikacieMichal Chabada
 
Android roka 2011: vysledky
Android roka 2011: vysledkyAndroid roka 2011: vysledky
Android roka 2011: vysledkyMichal Chabada
 
Hawaii International Conference on System Science - Chabada&Molka-Danielsen
Hawaii International Conference on System Science - Chabada&Molka-DanielsenHawaii International Conference on System Science - Chabada&Molka-Danielsen
Hawaii International Conference on System Science - Chabada&Molka-DanielsenMichal Chabada
 

Mehr von Michal Chabada (9)

MojAndroid.sk: Wordpress meetup ba 10/2014
MojAndroid.sk: Wordpress meetup ba 10/2014MojAndroid.sk: Wordpress meetup ba 10/2014
MojAndroid.sk: Wordpress meetup ba 10/2014
 
Martin Adamek: Ako byť úspešný so svojou aplikáciou na Google Play Store [A...
Martin Adamek: Ako byť úspešný so  svojou aplikáciou na  Google Play Store [A...Martin Adamek: Ako byť úspešný so  svojou aplikáciou na  Google Play Store [A...
Martin Adamek: Ako byť úspešný so svojou aplikáciou na Google Play Store [A...
 
Richard Mihalovic: Ako zarobit na svojej aplikacii a predat ju do zahranicia ...
Richard Mihalovic: Ako zarobit na svojej aplikacii a predat ju do zahranicia ...Richard Mihalovic: Ako zarobit na svojej aplikacii a predat ju do zahranicia ...
Richard Mihalovic: Ako zarobit na svojej aplikacii a predat ju do zahranicia ...
 
Pragmatic Mates: Dizajn Android aplikácií
Pragmatic Mates: Dizajn Android aplikáciíPragmatic Mates: Dizajn Android aplikácií
Pragmatic Mates: Dizajn Android aplikácií
 
Matúš Jančík: Programuj rýchlejšie, meraj presnejšie
Matúš Jančík: Programuj rýchlejšie, meraj presnejšieMatúš Jančík: Programuj rýchlejšie, meraj presnejšie
Matúš Jančík: Programuj rýchlejšie, meraj presnejšie
 
Daniel Novak: Android na full-time
Daniel Novak: Android na full-timeDaniel Novak: Android na full-time
Daniel Novak: Android na full-time
 
Android code 2011: najlepsie slovenske Android aplikacie
Android code 2011: najlepsie slovenske Android aplikacieAndroid code 2011: najlepsie slovenske Android aplikacie
Android code 2011: najlepsie slovenske Android aplikacie
 
Android roka 2011: vysledky
Android roka 2011: vysledkyAndroid roka 2011: vysledky
Android roka 2011: vysledky
 
Hawaii International Conference on System Science - Chabada&Molka-Danielsen
Hawaii International Conference on System Science - Chabada&Molka-DanielsenHawaii International Conference on System Science - Chabada&Molka-Danielsen
Hawaii International Conference on System Science - Chabada&Molka-Danielsen
 

Rudo Halmi: začíname programovať Android aplikácie

  • 1. Ako začať s programovaním pre Android 08.11.2012 Rudolf Halmi 1
  • 2. Osnova Nástroje Začíname s vývojom Tipy a triky Hrabeme sa v kóde 08.11.2012 Rudolf Halmi 2
  • 3. Nástroje Inštalácia Ubuntu 12.10 http://www.ubuntu.com/download/desktop ●Java ● Android SDK tools ● Intellij Idea 08.11.2012 Rudolf Halmi 3
  • 4. Java ● sudo add-apt-repository ppa:webupd8team/java ● sudo apt-get update ● sudo apt-get install oracle-java7-installer ● sudo update-java-alternatives -s java-7-oracle 08.11.2012 Rudolf Halmi 4
  • 5. Intellij Idea & Android SDK IntelliJ Idea – community edition ● http://www.jetbrains.com/idea/download/index.html Android SDK tools ● http://developer.android.com/sdk/index.html 08.11.2012 Rudolf Halmi 5
  • 6. Stiahnutie SDK API ● Spustíme si android-sdk-linux/tools ./android 08.11.2012 Rudolf Halmi 6
  • 8. Spustenie Idei ● Pri prvom spustení nič neimportujem 08.11.2012 Rudolf Halmi 8
  • 9. Idea 08.11.2012 Rudolf Halmi 9
  • 10. Začíname s vývojom ● Konfigurácia Idei ● Nový projekt ● Popis adresárov projektu ● 64 bitový problém ● Vytvorenie AVD ● Spustenie app 08.11.2012 Rudolf Halmi 10
  • 11. Konfigurácia Idei ● Konfigurácia SDK ● File → Project Structure ● Add new SDK ● Najprv cesta k Jave ● /usr/lib/jvm/java-7-oracle ● Potom k Android SDK 08.11.2012 Rudolf Halmi 11
  • 12. Nový projekt ● Klikneme na Create new project ● A potom na Create project from scratch 08.11.2012 Rudolf Halmi 12
  • 13. Nový projekt ● Vyplníme formulár 08.11.2012 Rudolf Halmi 13
  • 14. Popis adresárov projektu ● Assets – priamy prístup ● Bin - kompilovane ● Gen – generovane R ● Res - resource ● Src - zdrojaky ● AndroidManifest.xml 08.11.2012 Rudolf Halmi 14
  • 15. 64 bitový problém ● Pri pokuse o spustení app ADB sa nedá spustiť ● Nutné doinštalovať ia32-libs 08.11.2012 Rudolf Halmi 15
  • 16. Vytvorenie AVD ● Po kliknutí na zelenú ikonu (play) ● Sa otvorí okno na spustenie app 08.11.2012 Rudolf Halmi 16
  • 17. Vytvorenie AVD ● Klikneme na NEW 08.11.2012 Rudolf Halmi 17
  • 18. Zvolíme si API ● Veľkosť SD karty ● Rozlíšenie ● Príp. ďalšie parametre 08.11.2012 Rudolf Halmi 18
  • 19. Vytvorenie AVD ● Hláška potvrdí vytvorenie emulátora 08.11.2012 Rudolf Halmi 19
  • 20. Spustenie app ● Späť v okne spustenia app si zvolíme emulátor 08.11.2012 Rudolf Halmi 20
  • 21. Spustenie app 08.11.2012 Rudolf Halmi 21
  • 22. Tipy a triky ● Popis res adresárov ● Layouty ● WYSIWYG editor ● Rozmery widgetov ● Stringy ● Farby ● Obrázky ● Tvary 08.11.2012 Rudolf Halmi 22
  • 23. Popis res adresárov ● Anim ● Drawable ● Layout ● Raw ● Values ● Xml http://developer.android.com/training/basics/supporting-devices/index.html 08.11.2012 Rudolf Halmi 23
  • 24. Layouty ● Programovo alebo XML ● GUI prvky sa volajú Widgety ● Priradenie ID cez android:id ● Jeden root layout, v ňom widgety, alebo vnorené layouty ● LinearLayout ● RelativeLayout 08.11.2012 Rudolf Halmi 24
  • 25. LinearLayout Vertikálny Horizontálny 08.11.2012 Rudolf Halmi 25
  • 26. RelativeLayout Vrstvy Relatívna pozícia 08.11.2012 Rudolf Halmi 26
  • 27. WYSIWYG editor ● Ak sa mi nechce písať XML ● Ak chcem rýchlo spraviť koncept GUI ● Eclipse - UI designer v ADT ● DroidDraw ● Java v browseri ● Standalone app – Linux, Mac, Win 08.11.2012 Rudolf Halmi 27
  • 28. WYSIWYG editor – DroidDraw 08.11.2012 Rudolf Halmi 28
  • 29. Rozmery widgetov ● layout_width a layout_height ● wrap_content ● fill_parent (match_parent) ● Rozmer a jednotka – http://developer.android.com/guide/topics/resources/more-resources.html#Dimension ● Dip – density independent pixels 08.11.2012 Rudolf Halmi 29
  • 30. Rozmery widgetov ● Dip 08.11.2012 Rudolf Halmi 30
  • 31. Rozmery widgetov ● Referencia z xml súboru ● Vytvoríme si /values/dimensions.xml <resources> <dimen name="text_width">100dip</dimen> </resources> ● Priradíme widgetu: layout_width="@dimen/text_width" ● Pre rôzne konfigurácie rôzne veľkosti 08.11.2012 Rudolf Halmi 31
  • 32. Stringy ● Pridáme si do layoutu EditText ● Nie je dobré vpisovať stringy priamo do layoutu ● Otvoríme si /values/strings.xml a pridáme 08.11.2012 Rudolf Halmi 32
  • 33. Stringy ● Tieto texty priradíme widgetom 08.11.2012 Rudolf Halmi 33
  • 34. Farby ● Vytvoríme si /values/colors.xml ● Pridáme si novú farbu ● 4 Hexa hodnoty (00 - FF) ● FF – priehľadnosť ● ED – červená zložka ● CB – zelená zložka ● 40 – modrá zložka 08.11.2012 Rudolf Halmi 34
  • 35. Farby ● Priradenie v layoute: ● http://colorschemedesigner.com/ 08.11.2012 Rudolf Halmi 35
  • 36. Obrázky ● Zmena pozadia buttonu – nine patch http://developer.android.com/tools/help/draw9patch.html ● Button má rôzne stavy → XML /drawable/mybutton.xml 08.11.2012 Rudolf Halmi 36
  • 37. Obrázky ● Priradenie novej grafiky buttonu: 08.11.2012 Rudolf Halmi 37
  • 38. Tvary ● Namiesto obrázkov použijeme v xml zadefinovaný tvar ● Zaoblené rohy ● Gradient 3 farieb ● Zadefinujeme si 3 nové farby do colors.xml 08.11.2012 Rudolf Halmi 38
  • 39. Tvary ● Vytvoríme si /res/drawable/mygradient.xml 08.11.2012 Rudolf Halmi 39
  • 40. Tvary ● Priradíme ho nášmu root Layoutu a vycentrujeme 08.11.2012 Rudolf Halmi 40
  • 41. Hrabeme sa v kóde ● Životný cyklus aplikácií ● OnClickListener ● Implementácia metódy onClick 08.11.2012 Rudolf Halmi 41
  • 42. Životný cyklus aplikácií ● Otvoríme si MyActivity.java ● Vidíme metódu onCreate, existujú aj ďalšie 08.11.2012 Rudolf Halmi 42
  • 43. Životný cyklus aplikácií ● http://developer.android.com/training/basics/activity-lifecycle/index.html 08.11.2012 Rudolf Halmi 43
  • 44. OnClickListener ● Overridneme si metódu onStart() a zaregistrujeme si OnClickListener na Button ● Pripravíme si referencie na widgety 08.11.2012 Rudolf Halmi 44
  • 45. OnClickListener ● Nainicializujeme si ich v onStart 08.11.2012 Rudolf Halmi 45
  • 46. Implementácia metódy onClick ● Pridáme si kontrolnú hlášku do stringov ● Doplníme kód metódy onClick 08.11.2012 Rudolf Halmi 46
  • 47. Implementácia metódy onClick Prázdne meno Vyplnené meno 08.11.2012 Rudolf Halmi 47
  • 48. Ešte pár linkov ● NazdarSvet: http://goo.gl/dU13y ● Prezentácia: http://goo.gl/wZ2TU ● http://www.mojandroid.sk/vyvoj-android-aplikacii/piseme-prvu-android-aplikaciu ● http://developer.android.com/sdk/installing/index.html ● http://developer.android.com/about/dashboards/index.html ● http://developer.android.com/training/index.html ● http://developer.android.com/guide/components/index.html ● http://www.droiddraw.org/ 08.11.2012 Rudolf Halmi 48
  • 49. Ďakujem za pozornosť V prípade otázok: rootko@gmail.com alebo aj ak robíte grafiku :) 08.11.2012 Rudolf Halmi 49