Windows phone 8 - Från lapp till app

715 views

Published on

A presentaion in Swedish about how to take your app from idea to more or less finished app.
We talk about Portalble Class Library, MVVM, XAML and a lot more.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
715
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Windows phone 8 - Från lapp till app

  1. 1. Vem är jag?
  2. 2. Från lapp till app
  3. 3. Från lapp till app
  4. 4. Från lapp till app
  5. 5. Verktygen
  6. 6. Dev Center & Tools Dev Center http://developer.windowsphone.com/ Tools
  7. 7. Visual Studio
  8. 8. Blend
  9. 9. Windows Phone 8 SDK Kräver
  10. 10. Design principles
  11. 11. Design Principer
  12. 12. Pride in craftmanship
  13. 13. Pride in craftmanship
  14. 14. Pride in craftmanship
  15. 15. More with less
  16. 16. More with less
  17. 17. Fast and fluid
  18. 18. Fast and fluid
  19. 19. Authentically digital
  20. 20. Win as one
  21. 21. App process
  22. 22. Idé
  23. 23. Funktioner
  24. 24. Struktur
  25. 25. Skissa
  26. 26. Börja koda
  27. 27. Kontroller
  28. 28. Panorama
  29. 29. Pivot
  30. 30. ApplicationBar
  31. 31. ApplicationBar - Minimized
  32. 32. Buttons
  33. 33. LongListSelector
  34. 34. Capabilities Karta
  35. 35. Webbrowser Control
  36. 36. Mediaplayer
  37. 37. Progress och Popup
  38. 38. Fler kontroller
  39. 39. Windows Phone Toolkit ContextMenu DateTimePickers Effects – SlideInEffect, TiltEffect, TurnstileFeatherEffect HubTile ListPicker LongListMultiSelector Map extensions ToggleSwitch Navigation transitions WrapPanel
  40. 40. Telerik
  41. 41. Syncfusion
  42. 42. Projekttyper
  43. 43. Panorama App
  44. 44. Pivot App
  45. 45. Databound App
  46. 46. Xaml and Direct 3D
  47. 47. Xaml and XNA
  48. 48. Agents
  49. 49. Windows Phone App
  50. 50. Capabilities
  51. 51. Capabilities
  52. 52. XAML
  53. 53. XAML (zamel)
  54. 54. XAML
  55. 55. XAML Namespaces
  56. 56. XAML Namespaces - prefix phone
  57. 57. XAML Namespaces – design prefix
  58. 58. Application Lifecycle
  59. 59. Application Lifecycle - Dormant running deactivated dormant activated Spara State!
  60. 60. Application Lifecycle - Tombstoned running deactivated dormantTombstoned activated Spara State!
  61. 61. Grunderna - avklarade
  62. 62. Navigering
  63. 63. Sidor och navigering
  64. 64. Launchers & Choosers
  65. 65. Launchers & Choosers AddressChooserTask MapsTask SaveContactTask AddWalletItemTask MapUpdaterTask SaveEmailAddressTask BingMapsDirectionsTask MarketplaceDetailTask SavePhoneNumberTas k BingMapsTask MarketplaceHubTask SaveRingtoneTask CameraCaptureTask MarketplaceReviewTask SearchTask ConnectionSettingsTask MarketplaceSearchTask ShareLinkTask EmailAddressChooserTask MediaPlayerLauncher ShareMediaTask EmailComposeTask PhoneCallTask ShareStatusTask GameInviteTask PhoneNumberChooserTask SmsComposeTask MapDownloaderTask PhotoChooserTask WebBrowserTask MapsDirectionsTask SaveAppointmentTask
  66. 66. Notifications
  67. 67. Alarm / Reminder Reminder Alarm
  68. 68. MVVM & PCL
  69. 69. MVVM – Varför? Återanvändning av kod Testbarhet Lätt att hålla ordning på Kan visa design-time data i Expression Blend och Visual Studio
  70. 70. MVVM
  71. 71. Model-View-ViewModel View ViewModel Commands Data Binding Model
  72. 72. Model Model public class Person { public string Name{ get; set; } public string Age{ get; set; } }
  73. 73. ViewModel - INotifyPropertyChanged public class MainViewModel : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; private void NotifyPropertyChanged(String propertyName) { PropertyChangedEventHandler handler = PropertyChanged; if (null != handler) { handler(this, new PropertyChangedEventArgs(propertyName)); } } } ViewModel
  74. 74. ViewModel ViewModel private string _sampleProperty = "my start value"; public string SampleProperty { get { return _sampleProperty; } set { _sampleProperty = value; NotifyPropertyChanged("SampleProperty"); } }
  75. 75. View View <TextBox Text="{Binding SampleProperty, Mode=TwoWay}" />
  76. 76. View - Listor View <phone:LongListSelector ItemsSource="{Binding MyListOfItems}" SelectedItem="{Binding MySelectedItem, Mode=TwoWay}" />
  77. 77. Data Binding Modes <TextBox Text="{Binding SampleProperty, Mode=TwoWay}" />
  78. 78. Commands <Button Command="{Binding AddCommand}" CommandParameter="Untitled" Content="Button“ /> class AddItemCommand : ICommand { ViewModel _viewModel; public AddItemCommand(ViewModel viewModel) { _viewModel = viewModel; } public event EventHandler CanExecuteChanged; public bool CanExecute(object parameter) { return true; } public void Execute(object title) { _viewModel.AddItem(title as string); } }
  79. 79. Portable Class Library
  80. 80. Spara data
  81. 81. Möjligheterna
  82. 82. Demo
  83. 83. Live tile & toast
  84. 84. Live Tiles Uppdateras
  85. 85. Flip Tile Template Crossdomain.xml
  86. 86. Cycle Tile Template
  87. 87. Iconic Tile Template
  88. 88. Toast Template (wp:Text1) (wp:Text2)
  89. 89. Background Agents
  90. 90. Background agents
  91. 91. Demo
  92. 92. Avslutningsvis
  93. 93. Coding After Work www.CodingAfterWork.se
  94. 94. Tack! www.apeoholic.se

×