Windows Phone 7 @ Login 2011. II dalis. Programavimas
-
Upload
alan-mendelevich -
Category
Technology
-
view
827 -
download
4
description
Transcript of Windows Phone 7 @ Login 2011. II dalis. Programavimas
Programėlių kūrimoapžvalga
Alan MendelevičamCharts for WPF, Silverlight and Windows Phone 7 programuotojasAdDuplex įkūrėjas
[email protected]://devblog.ailon.orgTwitter: @ailon
Šioje dalyje
• Programavimo platformų apžvalga• Įrankiai• “Hello, World!” Silverlight ir XNA• Silverlight for Windows Phone
detaliau• Realios Silverlight programėlės
kūrimas
Platformos
Aukštos greitaveikos žaidimų platforma
Greitas 2D ir 3D žaidimų kūrimas
Brandi plačiai naudojama technologija. Naudojama kuriant žaidimus Xbox 360, Windows, ir Zune
Šiuolaikiška vartotojo sąsajos kūrimo aplinka
Greitas įspūdingų programėlių kūrimas
Metro-stilizuoti vartotojosąsajos komponentai
500,000+ programuotojųpasaulyje
Įrankiai
• Expression Blend • Visual Studio
Įrankiai
• http://create.msdn.com– Visual Studio 2010 Express–Windows Phone Emulator– Silverlight– XNA Game Studio 4.0–Microsoft Expression Blend for Windows
Phone– .NET Framework 4
Demo
„Hello, World!” Silverlight ir XNA
Silverlight programavimas Windows Phone
Aptarsime
• XAML• Navigacija• Orientacija• Komponentai (Controls)• Launcher‘iai ir Chooser‘iai• Tombstoning
Silverlight 3+
• Silverlight 3 pagrindas• Plius specifiniai moduliai (telefono
funkcijoms, sensoriams ir t.t.)• XAML + C# (arba VB.NET)• Optimizuota veikimui mažuose
mažesnio galingumo įrenginiuose
XAML
• eXtensible Application Markup Language• XML pagrindu• Naudojama WPF ir Silverlight• Deklaratyviai aprašo vartotojo sąsają,
animacijas ir kt.
Standartiniai projektų ruošiniai
• Windows Phone Application• Windows Phone Databound
Application• Windows Phone Class Library• Windows Phone Panorama
Application• Windows Phone Pivot Application
Temos
• Vartotojas gali keisti sistemos spalvas– Pasirinkti tamsų arba
šviesų foną– Pasirinkti „akcento“ spalvą
• Standartiniai Silverlight komponentai automatiškai prisitaiko prie temos
• Nustatyti stiliai
Data Binding
• Leidžia automatiškai „sujungti“ objektų laukus
• Padeda atskirti atsakomybes (dizainas/programavimas)–MVVM pattern
DemoAutomatic Unit Converter
Įrankiai, XAML, Data-Binding
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
Application Bar XAML
17
Puslapių navigacija• Navigacija per WP7
programėles vykdoma puslapių pagrindu– Panašiai, kaip web puslapiai– Puslapiai identifikuojami URI– Puslapiai neturi būsenos
private void hyperlinkButton1_Click( object sender, RoutedEventArgs e){ NavigationService.Navigate( new Uri("/SecondPage.xaml", UriKind.RelativeOrAbsolute) );}
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)
Pivot ir Panorama
• Geriausias būdas pradėti naujas programėles
• Atitinka Metro rekomendacijas „iš dėžutės“
• Paskirsto informaciją lengvai suvirškinamomis porcijomis
20
Pivot
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ą
22
Panorama
Panorama
• Horizontali drobė• Lydi vartotoją link papildomo turinio• Pradinis kelių skirtingų krypčių lygis• Dažniausiai būna iki 4 „ekranų“
Pivot prieš Panorama
• Gali atvaizduoti daugiau turinio
• Palaiko programinį perjungimą
• LoadingPivotItem ir UnloadingPivotItem į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
• Horizontalios PanoramaItem leidžia tvarkingai išdėstyti skirtingo pločio turinį
Pivot Panorama
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ų
DemoAutomatic Unit Converter
Application Bar, Pivot,Navigacija
Orientacijos palaikymas
• Puslapiai gali būti vertikalūs, horizontalūs arba automatiškai keisti orientaciją
• Nustatoma per SupportedOrientations property• Jei nustatyta PortraitOrLandscape,
persiorientuoja automatiškai
Bing Maps
• Leidžia atvaizduoti žemėlapius
• Optimizuotas lietimui (pinch zoom ir t.t.)
• Galima dėlioti papildomus sluoksnius
Kiti komponentai
• Silverlight for Windows Phone Toolkit– http://silverlight.codeplex.com– AutoCompleteBox, ContextMenu, DatePicker,
GestureService/GestureListener, ListPicker, LongListSelector, Page Transitions, PerformanceProgressBar, TiltEffect, TimePicker, ToggleSwitch, WrapPanel
• amCharts Quick Charts for Windows Phone 7– http://wpf.amcharts.com/quick
• Daug kitų
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ų
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
Launchers & ChoosersLaunchers PhoneCallTask SearchTask SMSComposeTask WebBrowserTask EmailComposeTask MarketplaceDetailTask MarketplaceHubTask MarketplaceReviewTas
k MarketplaceSearchTask MediaPlayerLauncher
Choosers CameraCaptureTask EmailAddressChooserTa
sk PhoneNumberChooserT
ask PhotoChooserTask SaveEmailAddressTask SavePhoneNumberTask
Tombstoning
Running
Deactivated
Tombstoned (in most
cases)
Activated
Programėles procesas sustabdomas (dažniausiai)*
Išsaugoti būseną
Pakrauti būseną
Vartotojas grįžta ten, kur ir buvo
Press Start Open toast Lock screen
DemoAutomatic Unit Converter
Launcher‘iai, Tombstoning
Apibendrinant
• Programėlės kuriamos Silverlight arba XNA• Naudojant Visual Studio ir Expression Blend• Silverlight 3+– 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
Klausimai?