Windows Phone 7 @ Login 2011. II dalis. Programavimas
1. Programėlių kūrimoapžvalga AlanMendelevič amChartsfor WPF, Silverlightand Windows Phone 7 programuotojas AdDuplex įkūrėjas ailon@ailon.org http://devblog.ailon.org Twitter: @ailon
2. Šioje dalyje Programavimo platformų apžvalga Įrankiai “Hello, World!” Silverlight ir XNA Silverlight for Windows Phone detaliau Realios Silverlight programėlės kūrimas
10. Įrankiai http://create.msdn.com Visual Studio 2010 Express Windows PhoneEmulator Silverlight XNA GameStudio 4.0 Microsoft ExpressionBlendfor Windows Phone .NET Framework4
16. Standartiniai projektų ruošiniai Windows Phone Application Windows Phone Databound Application Windows Phone Class Library Windows Phone Panorama Application Windows Phone Pivot Application
17. Temos Vartotojas gali keisti sistemos spalvas Pasirinkti tamsų arba šviesų foną Pasirinkti „akcento“ spalvą Standartiniai Silverlight komponentai automatiškai prisitaiko prie temos Nustatyti stiliai
18. Data Binding Leidžia automatiškai „sujungti“ objektų laukus Padeda atskirti atsakomybes (dizainas/programavimas) MVVM pattern
20. Application Bar Naudokite AppBar vietoje nuosavos meniu sistemos Iki 4 mygtukų + papildomi punktai išskleidžiamame meniu Mygtukai tik pagrindiniams veiksmams Balta spalva permatomame fone be apskritimo
22. Puslapių navigacija Navigacija per WP7 programėles vykdoma puslapių pagrindu Panašiai, kaip web puslapiai Puslapiai identifikuojami URI Puslapiai neturi būsenos 17 private void hyperlinkButton1_Click( object sender, RoutedEventArgs e) { NavigationService.Navigate( new Uri("/SecondPage.xaml", UriKind.RelativeOrAbsolute) ); }
23. Mygtukas „Atgal“ Grįžta į prieš tai buvusį puslapį Vartotojo sąsaja neduplikuoja šio funkcionalumo Galima keisti, kai grįžimas į prieš tai buvusį puslapį nėra logiška operacija Pavyzdžiui „pop-up“ lango uždarymui Negalima naudoti su grįžimu nesusijusiems tikslams (pvz. šaudymui)
24. Pivot ir Panorama Geriausias būdas pradėti naujas programėles Atitinka Metro rekomendacijas „iš dėžutės“ Paskirsto informaciją lengvai suvirškinamomis porcijomis
26. Pivot Geras būdas atvaizduoti skirtingus tos pačios informacijos pjūvius Arba skirtingą susijusią informaciją Leidžia vartotojui sukoncentruoti dėmesį ir tuo pačiu matyti susijusią informaciją
28. Panorama Horizontali drobė Lydi vartotoją link papildomo turinio Pradinis kelių skirtingų krypčių lygis Dažniausiai būna iki 4 „ekranų“
29. Pivot prieš Panorama Pivot Panorama Gali atvaizduoti daugiau turinio Palaiko programinį perjungimą LoadingPivotItemirUnloadingPivotItemįvykiai leidžia atidėti turinio pakrovimą Efektyvesnis ekraninio ploto panaudojimas Leidžia kurti įspūdingesnes programėles Foniniai paveikslėliai automatiškai tvarkingai nukerpami ir suklijuojami HorizontaliosPanoramaItemleidžia tvarkingai išdėstyti skirtingo pločio turinį
30. Atsargiai Niekada nedėkite Panoramos į Pivot Niekada nedėkite Pivot į Panoramą Nenaudokite Pivot ir Panoramos nuoseklaus interfeiso kūrimui Nerekomenduojama į Pivot ar Panoramą dėti įvedimo komponentų
32. Orientacijos palaikymas Puslapiai gali būti vertikalūs, horizontalūs arba automatiškai keisti orientaciją Nustatoma per SupportedOrientationsproperty Jei nustatyta PortraitOrLandscape, persiorientuoja automatiškai
33. Bing Maps Leidžia atvaizduoti žemėlapius Optimizuotas lietimui (pinch zoom ir t.t.) Galima dėlioti papildomus sluoksnius
34. Kiti komponentai Silverlightfor Windows PhoneToolkit http://silverlight.codeplex.com AutoCompleteBox, ContextMenu, DatePicker, GestureService/GestureListener, ListPicker, LongListSelector, PageTransitions, PerformanceProgressBar, TiltEffect, TimePicker, ToggleSwitch, WrapPanel amChartsQuickChartsfor Windows Phone7 http://wpf.amcharts.com/quick Daug kitų
35. Launcher‘iai ir Chooser‘iai Kiekviena programėlė vykdoma uždaroje „smėlio dėžutėje“, ir negali prieiti prie sisteminės informacijos ar leisti kitas programėles Launcher‘iai ir Chooser‘iai leidžia netiesioginį priėjimą prie šių galimybių
36. Launcher‘iai ir Chooser‘iai Launcher Paleidžia vieną iš standartinių programėlių, per kurias vartotojas atlieka reikiamus veiksmus Niekas negražinama mūsų programėlei Pavyzdžiui PhoneCallTask Chooser Paleidžia vieną iš standartinių programėlių, per kurias vartotojas atlieka reikiamus veiksmus Gražina rezultatą mūsų programėlei Pavyzdžiui PhotoChooserTask
42. Apibendrinant Programėlės kuriamos Silverlight arba XNA Naudojant Visual Studio ir ExpressionBlend Silverlight3+ XAML + C# (arba VB.NET) Puslapių navigacija Application Bar Orientacijos palaikymas Pivot ir Panorama Priėjimas prie sisteminių resursų per Launcher‘ius ir Chooser‘ius Tombstoning
MS pasirinko 2 .NET pagrindu sukurtas platformas: Silverlight – pagrinde naudojama kurti aplikacijas (bet kuriami ir žaidimai)XNA – 2D ir 3D žaidimų platforma naudojama kurti Xbox 360, Windows ir Zune žaidimams.Galima rinktis tik vieną UI platformą
NemokamiPuikiai veikia kartu
Visus reikalingus įrankius galima parsisiųsti nemokamai viename pakete
XAML – interfeiso aprašymo kalbaKaip persijunginėti tarp ekranųVertikali, horizontali orientacija, automatinis perjungimasStandartiniai ir papildomi komponentaiPriėjimas prie sisteminių resursųMultitaskingo imitacija
Kai pradėjo kurti WP einamojiSilverlight versija buvo 3Paimta kaip pagrindas, plius papildomos bibliotekos darbui su specifiniais telefono uždaviniaisInterfeisas aprašomas XAML kalba, programuojama C# (dabar galima ir VB.NET, bet nerekomenduoju)Varikliukas optimizuotas telefonams
Nustatytų stilių naudojimas užtikrina, kad gerai atrodys su skirtingomis temomis ir personalizuotu akcentuBūtina išbandyti su šviesiu fonu
- Dizaineriui nereikia žinoti kaip suprogramuoti tam tikri dalykai, programuotojui nereikia žinoti kaip jie atvaizduojami
- MP testuotojai labai kreipia dėmesį į Back veikimą