Course Description
All HOTT courses are available face-to-face, remote-live, on-demand or on site at your facility. In this Xamarin programming course students will learn how to use Xamarin as a cross-platform mobile development tool to build native Android and iOS apps using C# and a .NET code base.
Students will begin by learning how to use Xamarin.Forms to build Android and iOS apps using a single code base. Students will learn how to use XAML to define the UI layer for all platforms. By installing the app on both Android and iOS simulators and real test devices, they will see how the UI renders as native controls on each platform, thereby giving the app a native look and feel.
Coverage of XAML includes how to use XAML controls to interact with the use, how to use XAML to manage the UI layout, and how to connect UI events to C# event handlers. Students will also learn how to custom the UI appearance of an app for a specific platform.
Students will learn how to interact with both local data stored on the device and how to communicate with, and process data from, RESTful services using Xamarin.Forms.
Xamarin also supports Xamarin Native, which allows developers to write separate native UI code for each platform. In this course, students will learn how to install and configure Xamarin.Android, and then examine Android application architectures. They will build Android applications in C# using Xamarin.Android using the Android designers and controls.
Students will also learn how to install and configure Xamarin.iOS, and then examine native iOS application architectures. Students will build Xamarin.iOS applications in C# using the iOS designers and controls.
This Xamarin Mobile Development course will also examine how to work with touch and location services for both Android and iOS devices.
Agenda
Introduction to Cross-Platform Development - Examining the Android, iOS and Windows UI Experiences
- Options for Cross-Platform Mobile Development
- Problems with Cross-Platform Mobile Development
- Getting to Know Xamarin
- Anatomy of a Xamarin Application
- Understanding Portable Class Libraries
| Configuring your Development Environment - Installing Visual Studio and Xamarin
- Configuring the Mac for iOS Apps
- Testing Apps Using Emulators
- Testing Apps on Physical Devices:
- Building a "Hello World" Shared Project in Visual Studio
|
Improving Your C# - Reviewing C# and the .NET Framework
- Understanding await/async
- Understanding RESTful Services
| Part I: Introduction to Xamarin.Forms - Configuring the Visual Studio Project
- Introducing XAML
- Handling Events
- Using XAML to Layout the UI
- Using XAML Controls
- Platform Specific Calls
|
Part II: Introduction to Xamarin.Forms - Working with Text
- Working with XAML Resources
- Working with XAML Styles
- Data Binding
- Working with Bitmaps
| Customizing Xamarin.Forms Controls on Each Platform - Custom Renderers
- Implementing and Customizing Views
- Using Dependency Injection
|
Working with Xamarin.Android for Native UI - Configuring the Visual Studio Project
- Understanding Android Concepts
- Events, Protocols and Delegates
- Designing a UI for the Android
- Layouts
- Widgets
- Accessing Android APIs
- Calling Existing Java Code
| Working with Xamarin.iOS for Native UI - Configuring the Visual Studio Project
- Understanding iOS Concepts
- iOS Model-View-Contrroller
- Events, Protocols and Delegates
- Designing a UI for iOS
- StoryBoards
- Types of UIViewControllers
- Accessing iOS APIs
- Calling Existing Objective C/Swift Code
|
Working with Data - Local Data Options
- Calling RESTful Services
| Working with Touch - Understanding Touch Events
- Using Gesture Recognizers
|
Working with Location Services - Understanding GeoLocation
- Implementing "Where Am I"
| Extending Your Application with NuGet and the Xamarin Components Stores - Cloud Service Features (ex: Authentication Support, Azure Mobile Client, etc)
- Libraries (ex: Barcode Scanning, Messaging, Credit Card Scanning, etc)
- User Interface Components (ex: Charts, Carousels, Signature Pads, etc)
|
Audience
C# programming experience is required to learn Xamarin.
Comments
50% of the class is focused on hands-on lab exercises.
Course materials include student guide, hands-on lab manual and USB flash drive for examples and lab work.
Students receive a certificate of completion at the end of class.
Students can retake any portion of a class that has been completed, within 12 months at no extra cost.