SlideShare a Scribd company logo
1 of 38
Izrada hibridnih mobilnih 
aplikacija temeljenih na 
angular.js 
Ivan Vucicevic, BetaWare Osijek 2014.
Što trebamo znati? 
 Potrebno predznanje javaScript-a 
 Potrebno znanje HTML-a
Zašto Angular? 
 Ako želimo napravit dinamičku web ili mobilnu aplikaciju Angular je odličan izbor 
 Angular nam jako dobro strukturira i organizira kod javaScript-a 
 Angular nam omogućuje izradu jako brzih web stranica 
 Angular se ponaša odlično pri radu s jQuery-em 
 Angular nam pruža lako održavanje software-a 
 Angular proširuje HTML s novim atributima 
 Angular je savršen za SPA 
 Jednostavan za učenje
Što Angular čini tako brzim? 
Server 
Url zahtjev na server 
Odgovor servera s web stranicom HTML + JS 
Korisnik klikne na link 
Odgovor servera s web stranicom HTML + JS
Što Angular čini tako brzim? 
Server 
Url zahtjev na server 
Odgovor servera s web stranicom HTML + JS 
Korisnik klikne na link 
Odgovor servera s JSON podacima 
Podaci se 
učitavaju u 
postojeću 
stranicu
Što je Angular u stvari? 
 Open-source JavaScript framework koji se izvršava na strani klijenta 
 Održavan je od strane googla 
 Nastao 2010. 
 Slijedi MVC kako bi olakšao i ubrzao razvoj 
 Koristi tzv. direktive 
 Two-way data binding ($scope) 
 Moćni templating HTML-a
Što je Angular u stvari?
Kako koristiti Angular s našom web ili 
mobilnom aplikacijom? 
 Vrlo jednostavno 
 CDN 
 Direktno
Moduli u Angularu 
 Moduli su gdje pišemo dijelove naše aplikacije, te na taj način držimo kod enkapsuliranim 
 Zbog takvog pristupa kod nam je lakše održiv i čitljiv 
 Također u modulima definiramo ovisnosti ostalih modula za našu aplikaciju
Moduli u Angularu 
var ngApp = angular.module('ngApp', [‘module2‘, ‘module3']); 
app.js
Pisanje izraza u Angularu 
 ng-app direktiva je definirala cijeli HTML kao angular aplikaciju 
 Na taj način omogućeno nam je pisanje izraza unutar vitičastih zagrada
Primjeri direktiva (najčešće korištenih) 
 ng-app – dodavanje Modula angular aplikacije stranici 
 ng-controller – dodavanje funkcije kontrolera stranici 
 ng-show/ng-hide – Prikaz/skrivanje elementa ovisno o vrijednosti modela 
 ng-repeat – ponavljanje za svaki element niza (foreach)
Filteri u Angularu 
 Angular biblioteka u sebi sadrži mnoge filtere koji se pozivaju „pipe” operatorom 
(currency, datetime, number, orderBy) 
 Mogućnost izrade custom filtera
<img> tag 
 Problem prilikom učitavanaja slike iz niza.
Forme Modeli
Dupliciranje 
Repeating.html
Dupliciranje 
Server 
Url zahtjev na server 
Odgovor servera s web stranicom HTML + JS 
ng-include (ajax) 
HTML repeating.html 
Podaci se 
učitavaju u 
postojeću 
stranicu
Prilagođene direktive
Rute / Konfiguracija
Kontroleri
Kontroleri
Hibridne mobilne aplikacije 
 Nativne 
 SDK 
 Mobilni Web 
 PHP, node.js 
 Hibridne 
 HTML5, JS
Što odabrati? 
 Hibridne aplikacije 
 Razvoj istovremeno na više platformi 
 Brži razvoj općenito 
 Pristup većini nativnih komponenti 
 Lošije performanse 
 Nativne aplikacije 
 Najbolje performanse 
 Sporiji razvoj 
 Specifične za platformu
Što odabrati? 
 Hibridne aplikacije su Vaš izbor ako: 
 Ciljate na razvoj na više platformi 
 Želite koristiti mogućnosti kao što su kamera, geolokacija ili akcelerometar 
 Želite aplikaciju koja će raditi i kada nemate pristup internetu 
 Ne interesiraju Vas grafičke performanse
Što odabrati?
Što trebamo znati? 
 HTML5, CSS3 (SCSS i LESS) 
 HTML5 mobilni framework (OnsenUI, Ionic, IntelAppFramework, jQueryMobile, KendoUI…) 
 JS (AngularJS ili jQueryMobile) 
 Ako je potrebna komunikacija sa serverom: PHP, ASP … 
 CLI (phonegap, cordova, nodejs)
Ionic framewrok 
 Besplatan 
 Open Source 
 Optimiziran za mobilne uređaje 
 Zasnovan na angularJS 
 Izvrsne performanse 
 Phonegap/Cordova 
 Koristi vlastite html tagove <ion>
Onsen framework 
 Širok spektar gotovih UI komponenti 
 Dizajn prilagođen za mobilne uređaje i tablete 
 Izvrsne performanse 
 Korisit angularJS 
 Phonegap/Cordova 
 Koristi vlastite html tagove <ons>
Onsen karakteristike 
 +Nevjerojatan broj gotovih komponenti 
 +Velik broj gotovih templatea ili layouta 
 +Monaca (debug) 
 -Monaca nije besplatna 
 -Gotovi layouti nisu temeljeni na angularu
Ionic karakteristike 
 +ionic CLI 
 +besplatan 
 +Open Source 
 +u potpunosti temeljen na angularJS 
 +Prepoznavanje platforme 
 +Native feel 
 -Još uvijek je beta 
 -manjak templat-a 
 -konstantne nadogradnje
Hibridna aplikacija koja 
uploada i pretražuje slike na 
flickeru!
Izbor layouta 
• Potreban je jedan screen 
• Jedan button 
• Forma za pretragu
Index.html
App.js
directives.js
controllers.js
In ction
Hvala na pažnji!

More Related Content

Viewers also liked

Konflikti kreativni centar
Konflikti kreativni centarKonflikti kreativni centar
Konflikti kreativni centarZorana Galic
 
Marcetić andreja upravljanje konfliktima motivacija
Marcetić andreja upravljanje konfliktima   motivacijaMarcetić andreja upravljanje konfliktima   motivacija
Marcetić andreja upravljanje konfliktima motivacijaAndreja Marcetić
 
Lab 4 active directory domain services
Lab 4 active directory domain services Lab 4 active directory domain services
Lab 4 active directory domain services tinhban269
 
Pemberlakuan Standar English As Second Language (ESL)
Pemberlakuan Standar English As Second Language (ESL)Pemberlakuan Standar English As Second Language (ESL)
Pemberlakuan Standar English As Second Language (ESL)Yekti Hanani
 
India_alumni_newsletter_December2016_opt
India_alumni_newsletter_December2016_optIndia_alumni_newsletter_December2016_opt
India_alumni_newsletter_December2016_optSuneet Saxena
 
Kresge Eminent Artist 2014: Bill Rauhauser
Kresge Eminent Artist 2014: Bill RauhauserKresge Eminent Artist 2014: Bill Rauhauser
Kresge Eminent Artist 2014: Bill RauhauserThe Kresge Foundation
 
나의 핀란드 여행
나의 핀란드 여행나의 핀란드 여행
나의 핀란드 여행나무 은행
 
สวัสดีค่ะครับ
สวัสดีค่ะครับสวัสดีค่ะครับ
สวัสดีค่ะครับTuke Ingkhaninan
 
Best practices machine learning final
Best practices machine learning finalBest practices machine learning final
Best practices machine learning finalDianna Doan
 

Viewers also liked (12)

Konflikti kreativni centar
Konflikti kreativni centarKonflikti kreativni centar
Konflikti kreativni centar
 
Marcetić andreja upravljanje konfliktima motivacija
Marcetić andreja upravljanje konfliktima   motivacijaMarcetić andreja upravljanje konfliktima   motivacija
Marcetić andreja upravljanje konfliktima motivacija
 
Factor de reduccion
Factor de reduccionFactor de reduccion
Factor de reduccion
 
Lab 4 active directory domain services
Lab 4 active directory domain services Lab 4 active directory domain services
Lab 4 active directory domain services
 
Pemberlakuan Standar English As Second Language (ESL)
Pemberlakuan Standar English As Second Language (ESL)Pemberlakuan Standar English As Second Language (ESL)
Pemberlakuan Standar English As Second Language (ESL)
 
India_alumni_newsletter_December2016_opt
India_alumni_newsletter_December2016_optIndia_alumni_newsletter_December2016_opt
India_alumni_newsletter_December2016_opt
 
Islam of sea
Islam of seaIslam of sea
Islam of sea
 
Семинар PMI Уфа, апрель 2015г.
Семинар PMI Уфа, апрель 2015г.Семинар PMI Уфа, апрель 2015г.
Семинар PMI Уфа, апрель 2015г.
 
Kresge Eminent Artist 2014: Bill Rauhauser
Kresge Eminent Artist 2014: Bill RauhauserKresge Eminent Artist 2014: Bill Rauhauser
Kresge Eminent Artist 2014: Bill Rauhauser
 
나의 핀란드 여행
나의 핀란드 여행나의 핀란드 여행
나의 핀란드 여행
 
สวัสดีค่ะครับ
สวัสดีค่ะครับสวัสดีค่ะครับ
สวัสดีค่ะครับ
 
Best practices machine learning final
Best practices machine learning finalBest practices machine learning final
Best practices machine learning final
 

Similar to AngularJS - Ivan Vučičević

Angular 2 and TypeScript - 2016 Dump Day
Angular 2 and TypeScript - 2016 Dump DayAngular 2 and TypeScript - 2016 Dump Day
Angular 2 and TypeScript - 2016 Dump DayNETMedia
 
WebUG - Hibridne mobilne aplikacije
WebUG - Hibridne mobilne aplikacijeWebUG - Hibridne mobilne aplikacije
WebUG - Hibridne mobilne aplikacijeMatija Šmalcelj
 
GraphQL & Laravel - Efikasni API servisi
GraphQL & Laravel - Efikasni API servisiGraphQL & Laravel - Efikasni API servisi
GraphQL & Laravel - Efikasni API servisiPedja Jevtic
 
[TVZ računarstvo] Dinamičke web aplikacije, predavanje 11.
[TVZ računarstvo] Dinamičke web aplikacije, predavanje 11. [TVZ računarstvo] Dinamičke web aplikacije, predavanje 11.
[TVZ računarstvo] Dinamičke web aplikacije, predavanje 11. Stipe Predanic
 
Zašto nam treba PaaS u Srcu?
Zašto nam treba PaaS u Srcu?Zašto nam treba PaaS u Srcu?
Zašto nam treba PaaS u Srcu?Denis Kranjčec
 
Developers' mDay 2017. - Veljko Manojlović Telenor
Developers' mDay 2017. - Veljko Manojlović TelenorDevelopers' mDay 2017. - Veljko Manojlović Telenor
Developers' mDay 2017. - Veljko Manojlović TelenormCloud
 
MICROSOFT INTERNET TECHNOLOGIES
MICROSOFT INTERNET TECHNOLOGIESMICROSOFT INTERNET TECHNOLOGIES
MICROSOFT INTERNET TECHNOLOGIESAnamarija Culjak
 
Oracle information age co croz-neos v2.2.
Oracle information age co croz-neos v2.2.Oracle information age co croz-neos v2.2.
Oracle information age co croz-neos v2.2.Oracle Hrvatska
 
(WS11) Srđan Stanić (Pet minuta): JavaScript svemogući*
(WS11) Srđan Stanić (Pet minuta): JavaScript svemogući*(WS11) Srđan Stanić (Pet minuta): JavaScript svemogući*
(WS11) Srđan Stanić (Pet minuta): JavaScript svemogući*Web::Strategija
 
Spring - preddiplomski 2018./2019.
Spring - preddiplomski 2018./2019.Spring - preddiplomski 2018./2019.
Spring - preddiplomski 2018./2019.Mario Kušek
 

Similar to AngularJS - Ivan Vučičević (20)

JavaCro'14 - MEAN Stack – How & When – Nenad Pećanac
JavaCro'14 - MEAN Stack – How & When – Nenad PećanacJavaCro'14 - MEAN Stack – How & When – Nenad Pećanac
JavaCro'14 - MEAN Stack – How & When – Nenad Pećanac
 
Angular 2 and TypeScript - 2016 Dump Day
Angular 2 and TypeScript - 2016 Dump DayAngular 2 and TypeScript - 2016 Dump Day
Angular 2 and TypeScript - 2016 Dump Day
 
Javantura Zagreb 2014 - Java na klijenstskoj strani - Ivan Vučak
Javantura Zagreb 2014 - Java na klijenstskoj strani - Ivan VučakJavantura Zagreb 2014 - Java na klijenstskoj strani - Ivan Vučak
Javantura Zagreb 2014 - Java na klijenstskoj strani - Ivan Vučak
 
WebUG - Hibridne mobilne aplikacije
WebUG - Hibridne mobilne aplikacijeWebUG - Hibridne mobilne aplikacije
WebUG - Hibridne mobilne aplikacije
 
GraphQL & Laravel - Efikasni API servisi
GraphQL & Laravel - Efikasni API servisiGraphQL & Laravel - Efikasni API servisi
GraphQL & Laravel - Efikasni API servisi
 
JavaCro'15 - API as a new architecture - Miroslav Rešetar
JavaCro'15 - API as a new architecture - Miroslav RešetarJavaCro'15 - API as a new architecture - Miroslav Rešetar
JavaCro'15 - API as a new architecture - Miroslav Rešetar
 
[TVZ računarstvo] Dinamičke web aplikacije, predavanje 11.
[TVZ računarstvo] Dinamičke web aplikacije, predavanje 11. [TVZ računarstvo] Dinamičke web aplikacije, predavanje 11.
[TVZ računarstvo] Dinamičke web aplikacije, predavanje 11.
 
Uvod u aplikacije - Luka Mandić
Uvod u aplikacije - Luka MandićUvod u aplikacije - Luka Mandić
Uvod u aplikacije - Luka Mandić
 
JavaCro'15 - Enterprise service bus - Juraj Ćutić
JavaCro'15 - Enterprise service bus - Juraj ĆutićJavaCro'15 - Enterprise service bus - Juraj Ćutić
JavaCro'15 - Enterprise service bus - Juraj Ćutić
 
Zašto nam treba PaaS u Srcu?
Zašto nam treba PaaS u Srcu?Zašto nam treba PaaS u Srcu?
Zašto nam treba PaaS u Srcu?
 
Developers' mDay 2017. - Veljko Manojlović Telenor
Developers' mDay 2017. - Veljko Manojlović TelenorDevelopers' mDay 2017. - Veljko Manojlović Telenor
Developers' mDay 2017. - Veljko Manojlović Telenor
 
Javantura Zagreb 2014 - Alfresco-Neo4j integracija - Damir Murat
Javantura Zagreb 2014 - Alfresco-Neo4j integracija - Damir MuratJavantura Zagreb 2014 - Alfresco-Neo4j integracija - Damir Murat
Javantura Zagreb 2014 - Alfresco-Neo4j integracija - Damir Murat
 
JavaCro'14 - Is there a single “correct” web architecture for business apps –...
JavaCro'14 - Is there a single “correct” web architecture for business apps –...JavaCro'14 - Is there a single “correct” web architecture for business apps –...
JavaCro'14 - Is there a single “correct” web architecture for business apps –...
 
JavaCro'14 - Auditing of user activity through NoSQL database – Kristijan Duv...
JavaCro'14 - Auditing of user activity through NoSQL database – Kristijan Duv...JavaCro'14 - Auditing of user activity through NoSQL database – Kristijan Duv...
JavaCro'14 - Auditing of user activity through NoSQL database – Kristijan Duv...
 
SQL Azure
SQL AzureSQL Azure
SQL Azure
 
MICROSOFT INTERNET TECHNOLOGIES
MICROSOFT INTERNET TECHNOLOGIESMICROSOFT INTERNET TECHNOLOGIES
MICROSOFT INTERNET TECHNOLOGIES
 
Oracle information age co croz-neos v2.2.
Oracle information age co croz-neos v2.2.Oracle information age co croz-neos v2.2.
Oracle information age co croz-neos v2.2.
 
(WS11) Srđan Stanić (Pet minuta): JavaScript svemogući*
(WS11) Srđan Stanić (Pet minuta): JavaScript svemogući*(WS11) Srđan Stanić (Pet minuta): JavaScript svemogući*
(WS11) Srđan Stanić (Pet minuta): JavaScript svemogući*
 
Napredni Excel brochure
Napredni Excel brochureNapredni Excel brochure
Napredni Excel brochure
 
Spring - preddiplomski 2018./2019.
Spring - preddiplomski 2018./2019.Spring - preddiplomski 2018./2019.
Spring - preddiplomski 2018./2019.
 

More from Kruno Ris

Digital Transformation
Digital TransformationDigital Transformation
Digital TransformationKruno Ris
 
Marketing u startup tvrtkama
Marketing u startup tvrtkamaMarketing u startup tvrtkama
Marketing u startup tvrtkamaKruno Ris
 
Poduzetnici nisu zli, oni pokreću
Poduzetnici nisu zli, oni pokrećuPoduzetnici nisu zli, oni pokreću
Poduzetnici nisu zli, oni pokrećuKruno Ris
 
Tjedan mobilnosti studenata
Tjedan mobilnosti studenataTjedan mobilnosti studenata
Tjedan mobilnosti studenataKruno Ris
 
BetaWare d.o.o. ukratko
BetaWare d.o.o. ukratkoBetaWare d.o.o. ukratko
BetaWare d.o.o. ukratkoKruno Ris
 
FlyStartup | Seminar o poduzetništvu
FlyStartup | Seminar o poduzetništvuFlyStartup | Seminar o poduzetništvu
FlyStartup | Seminar o poduzetništvuKruno Ris
 
Ekspertni sustavi
Ekspertni sustaviEkspertni sustavi
Ekspertni sustaviKruno Ris
 
Data WareHose
Data WareHoseData WareHose
Data WareHoseKruno Ris
 
Mobile development
Mobile developmentMobile development
Mobile developmentKruno Ris
 
Elektronsko poslovanje mPayment
Elektronsko poslovanje mPaymentElektronsko poslovanje mPayment
Elektronsko poslovanje mPaymentKruno Ris
 

More from Kruno Ris (12)

Digital Transformation
Digital TransformationDigital Transformation
Digital Transformation
 
Marketing u startup tvrtkama
Marketing u startup tvrtkamaMarketing u startup tvrtkama
Marketing u startup tvrtkama
 
CityHub
CityHubCityHub
CityHub
 
Poduzetnici nisu zli, oni pokreću
Poduzetnici nisu zli, oni pokrećuPoduzetnici nisu zli, oni pokreću
Poduzetnici nisu zli, oni pokreću
 
CityHub
CityHubCityHub
CityHub
 
Tjedan mobilnosti studenata
Tjedan mobilnosti studenataTjedan mobilnosti studenata
Tjedan mobilnosti studenata
 
BetaWare d.o.o. ukratko
BetaWare d.o.o. ukratkoBetaWare d.o.o. ukratko
BetaWare d.o.o. ukratko
 
FlyStartup | Seminar o poduzetništvu
FlyStartup | Seminar o poduzetništvuFlyStartup | Seminar o poduzetništvu
FlyStartup | Seminar o poduzetništvu
 
Ekspertni sustavi
Ekspertni sustaviEkspertni sustavi
Ekspertni sustavi
 
Data WareHose
Data WareHoseData WareHose
Data WareHose
 
Mobile development
Mobile developmentMobile development
Mobile development
 
Elektronsko poslovanje mPayment
Elektronsko poslovanje mPaymentElektronsko poslovanje mPayment
Elektronsko poslovanje mPayment
 

AngularJS - Ivan Vučičević

  • 1. Izrada hibridnih mobilnih aplikacija temeljenih na angular.js Ivan Vucicevic, BetaWare Osijek 2014.
  • 2. Što trebamo znati?  Potrebno predznanje javaScript-a  Potrebno znanje HTML-a
  • 3. Zašto Angular?  Ako želimo napravit dinamičku web ili mobilnu aplikaciju Angular je odličan izbor  Angular nam jako dobro strukturira i organizira kod javaScript-a  Angular nam omogućuje izradu jako brzih web stranica  Angular se ponaša odlično pri radu s jQuery-em  Angular nam pruža lako održavanje software-a  Angular proširuje HTML s novim atributima  Angular je savršen za SPA  Jednostavan za učenje
  • 4. Što Angular čini tako brzim? Server Url zahtjev na server Odgovor servera s web stranicom HTML + JS Korisnik klikne na link Odgovor servera s web stranicom HTML + JS
  • 5. Što Angular čini tako brzim? Server Url zahtjev na server Odgovor servera s web stranicom HTML + JS Korisnik klikne na link Odgovor servera s JSON podacima Podaci se učitavaju u postojeću stranicu
  • 6. Što je Angular u stvari?  Open-source JavaScript framework koji se izvršava na strani klijenta  Održavan je od strane googla  Nastao 2010.  Slijedi MVC kako bi olakšao i ubrzao razvoj  Koristi tzv. direktive  Two-way data binding ($scope)  Moćni templating HTML-a
  • 7. Što je Angular u stvari?
  • 8. Kako koristiti Angular s našom web ili mobilnom aplikacijom?  Vrlo jednostavno  CDN  Direktno
  • 9. Moduli u Angularu  Moduli su gdje pišemo dijelove naše aplikacije, te na taj način držimo kod enkapsuliranim  Zbog takvog pristupa kod nam je lakše održiv i čitljiv  Također u modulima definiramo ovisnosti ostalih modula za našu aplikaciju
  • 10. Moduli u Angularu var ngApp = angular.module('ngApp', [‘module2‘, ‘module3']); app.js
  • 11. Pisanje izraza u Angularu  ng-app direktiva je definirala cijeli HTML kao angular aplikaciju  Na taj način omogućeno nam je pisanje izraza unutar vitičastih zagrada
  • 12. Primjeri direktiva (najčešće korištenih)  ng-app – dodavanje Modula angular aplikacije stranici  ng-controller – dodavanje funkcije kontrolera stranici  ng-show/ng-hide – Prikaz/skrivanje elementa ovisno o vrijednosti modela  ng-repeat – ponavljanje za svaki element niza (foreach)
  • 13. Filteri u Angularu  Angular biblioteka u sebi sadrži mnoge filtere koji se pozivaju „pipe” operatorom (currency, datetime, number, orderBy)  Mogućnost izrade custom filtera
  • 14. <img> tag  Problem prilikom učitavanaja slike iz niza.
  • 17. Dupliciranje Server Url zahtjev na server Odgovor servera s web stranicom HTML + JS ng-include (ajax) HTML repeating.html Podaci se učitavaju u postojeću stranicu
  • 22. Hibridne mobilne aplikacije  Nativne  SDK  Mobilni Web  PHP, node.js  Hibridne  HTML5, JS
  • 23. Što odabrati?  Hibridne aplikacije  Razvoj istovremeno na više platformi  Brži razvoj općenito  Pristup većini nativnih komponenti  Lošije performanse  Nativne aplikacije  Najbolje performanse  Sporiji razvoj  Specifične za platformu
  • 24. Što odabrati?  Hibridne aplikacije su Vaš izbor ako:  Ciljate na razvoj na više platformi  Želite koristiti mogućnosti kao što su kamera, geolokacija ili akcelerometar  Želite aplikaciju koja će raditi i kada nemate pristup internetu  Ne interesiraju Vas grafičke performanse
  • 26. Što trebamo znati?  HTML5, CSS3 (SCSS i LESS)  HTML5 mobilni framework (OnsenUI, Ionic, IntelAppFramework, jQueryMobile, KendoUI…)  JS (AngularJS ili jQueryMobile)  Ako je potrebna komunikacija sa serverom: PHP, ASP …  CLI (phonegap, cordova, nodejs)
  • 27. Ionic framewrok  Besplatan  Open Source  Optimiziran za mobilne uređaje  Zasnovan na angularJS  Izvrsne performanse  Phonegap/Cordova  Koristi vlastite html tagove <ion>
  • 28. Onsen framework  Širok spektar gotovih UI komponenti  Dizajn prilagođen za mobilne uređaje i tablete  Izvrsne performanse  Korisit angularJS  Phonegap/Cordova  Koristi vlastite html tagove <ons>
  • 29. Onsen karakteristike  +Nevjerojatan broj gotovih komponenti  +Velik broj gotovih templatea ili layouta  +Monaca (debug)  -Monaca nije besplatna  -Gotovi layouti nisu temeljeni na angularu
  • 30. Ionic karakteristike  +ionic CLI  +besplatan  +Open Source  +u potpunosti temeljen na angularJS  +Prepoznavanje platforme  +Native feel  -Još uvijek je beta  -manjak templat-a  -konstantne nadogradnje
  • 31. Hibridna aplikacija koja uploada i pretražuje slike na flickeru!
  • 32. Izbor layouta • Potreban je jedan screen • Jedan button • Forma za pretragu