05 | Xamarin Forms, kódosztási technikák Farkas Bálint | Technical Evangelist | Microsoft.

Slides:



Advertisements
Similar presentations
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Advertisements

© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Preface Demo A Quick Thank You How Did We Do It?
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Feature: Reprint Outstanding Transactions Report © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product.
Feature: Purchase Requisitions - Requester © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
MIX 09 4/15/ :14 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Co- location Mass Market Managed Hosting ISV Hosting.
Windows 7 Training Microsoft Confidential. Windows ® 7 Compatibility Version Checking.
Multitenant Model Request/Response General Model.
Feature: Purchase Order Prepayments II © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
Announcing Demo Announcing.
Feature: OLE Notes Migration Utility
Feature: Web Client Keyboard Shortcuts © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
Feature: SmartList Usability Enhancements © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
Session 1.
Built by Developers for Developers…. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
 Rico Mariani Architect Microsoft Corporation.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Feature: Assign an Item to Multiple Sites © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Feature: Print Remaining Documents © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
Connect with life Connect with life
Windows Azure Connect Name Title Microsoft Corporation.
NEXT: Overview – Sharing skills & code.
demo Receive Inventory Export Parse and Normalize.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Feature: Document Attachment –Replace OLE Notes © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product.
Nick Scott | Dynamics CRM Consultant with BKD Technologies.
Building Social Games for Windows 8 with Windows Azure Name Title Microsoft Corporation.
Feature: Customer Combiner and Modifier © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
demo Instance AInstance B Read “7” Write “8”

customer.
03 | Word Templates Brian Meier| Senior Lead Program Manager.
demo © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
Browser Identity Provider Access Control Application.
Cloud Roadshow. Getting Started with mobile app development with the Office 365 APIs.
demo Demo.
demo QueryForeign KeyInstance /sm:body()/x:Order/x:Delivery/y:TrackingId1Z
Feature: Suggested Item Enhancements – Analysis and Assignment © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and.
Windows Azure SQL Data Sync Name Title Microsoft Corporation.
projekt202 © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
The CLR CoreCLRCoreCLR © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks.
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
04 | Business Analyzer Brian Meier| Senior Lead Program Manager.
Demo Fest of Some Leading Store Apps Module 2.

Farkas Bálint | Technical Evangelist | Microsoft.
Microsoft Dynamics NAV 2018 – what’s new
Возможности Excel 2010, о которых следует знать
Title of Presentation 11/22/2018 3:34 PM
Office Mac /30/2018 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Title of Presentation 12/2/2018 3:48 PM
Brian Keller Sr. Technical Evangelist Microsoft Session Code: DEV310
What’s new for Windows 8 Devs Part 2
Brian Keller Sr. Technical Evangelist Microsoft Session Code: DEV310
8/04/2019 9:13 PM © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
XAML Deep Dive for Windows & Windows Phone Apps Jump Start
Виктор Хаджийски Катедра “Металургия на желязото и металолеене”
WINDOWS AZURE A LAP AROUND PLATFORM THE Steve Marx
Title of Presentation 5/12/ :53 PM
Шитманов Дархан Қаражанұлы Тарих пәнінің
Title of Presentation 5/24/2019 1:26 PM
Title of Presentation 7/24/2019 8:53 PM
Presentation transcript:

05 | Xamarin Forms, kódosztási technikák Farkas Bálint | Technical Evangelist | Microsoft

Xamarin.Forms bevezetés –Mi ez? –Követelmények Xamarin.Forms vezérlőelemek Kódosztási technikák –Portable Class Library-k –MVVM –Dependency Injection Heritage Properties Xamarin.Forms alapokon Xamarin.Forms Custom Renderer-ek Module Overview

Xamarin.Forms bevezetés

What is Xamarin.Forms?

Portable Class Library

Xamarin.Forms

Portable Class Library or Shared Project C# Platform Specific Shared C# Interface Code (Xamarin.Forms) Shared C# App Logic (ViewModels, Models etc)

Requires iOS 6.1+ Requires Android 4.0+ Requires WP8.0+ (Silverlight) WinRT previewben

Xamarin.Forms vezérlőelemek

Xamarin.Forms 1.Pages 2.Layouts 3.Views 4.Cells

Xamarin.Forms - Pages UIViewController Activity Page

Xamarin.Forms - Layouts

Xamarin.Forms - Views

Xamarin.Forms - Cells

Xamarin.Forms DataBinding Engine

DEMO Intro to Xamarin.Forms

Code Sharing – Portable Class Libraries

Portable Class Libraries Portable Class Library project template in Visual Studio 2012/2013 (except Express) –C# or Visual Basic –Good for creating a cross-platform.dll with pure business logic –Only managed code –Single codebase for Windows, Silverlight, Windows Phone, or Xbox –Only shared assemblies are available for use (mostly restricted to System namespaces) –Limited, but provides portable, modular, and encapsulated code

Portable Class Library One Source One Project One Binary Multiple Platforms

Portable Class Libraries Limits Platform Specific OS Functions Storage (no file I/O access) Alerts MessageBox GPS

Shared Projects #ifdef parancsokkal targetált kód Build időben hozzámásolódik a szülőprojekthez és azzal együtt fordul (ellentétben a PCL-lel, ami önálló DLL, így nem tudja, honnan van bereferálva)

Code Sharing – MVVM, Inversion of Control (IoC) and Dependency Injection

Container Dependency Injection Register Concrete Type PCL Locator Type1 : IType1 Type2 : IType2 Register ViewModel ViewModel IType2

Using Dependency Injection namespace HeritageProperties.PCL { public interface IGpsService { Task GetLocation(); }

public partial class LocationService : IGpsService { CLLocationManager manager = new CLLocationManager(); public Task GetLocation() { manager.StartUpdatingLocation(); return Task.Run(() => { var ret = new Location(); // code omitted for space // return the location return ret; }); }

SimpleIoc.Default.Register (); public MainViewModel(IGpsService gps) { this.GpsService = gps; }

ServiceLocator.Current.GetInstance ();

DEMO Implementing Heritage Properties for Android, iOS and Windows using Xamarin.Forms

Maps & Custom Renderers

// register the iGpsService for iOS SimpleIoc.Default.Register (); public MainViewModel(IGpsService gps, HeritagePropertyService service, INavigation navigation) { } Xamarin.Forms – Custom Renderers

[assembly: ExportRenderer(typeof(MapRenderer2), typeof(MapRenderer2Android))] public class MapRenderer2 : Map { } map = new MapRenderer2() { IsShowingUser = true, HeightRequest = 100, WidthRequest = 960, VerticalOptions = LayoutOptions.FillAndExpand }; Xamarin.Forms – Custom Renderers

Xamarin.Forms – Messaging Custom Renderer Custom Renderer (PCL) Send Message To Invoke Method Send Message To Notify of Event

DEMO Implementing Custom Renders For Maps

Xamarin.Forms intró –Mi ez? –Követelmények Xamarin.Forms vezérlőelemek Kódosztási technikák –Portable Class Library-k –MVVM –Dependency Injection Heritage Properties Xamarin.Forms alapokon Xamarin.Forms Custom Renderer-ek Module Recap

©2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.