Book Image

Creating Cross-Platform C# Applications with Uno Platform

By : Matt Lacey, Marcel Alexander Wagner
Book Image

Creating Cross-Platform C# Applications with Uno Platform

By: Matt Lacey, Marcel Alexander Wagner

Overview of this book

Developers are increasingly being asked to build native applications that run on multiple operating systems and in the browser. In the past, this would have meant learning new technologies and making multiple copies of an application. But the Uno Platform allows you to use tools, languages, and APIs you already know from building Windows apps to develop apps that can also run on other platforms. This book will help you to create customer-facing as well as line-of-business apps that can be used on the device, browser, or operating system of your choice. This practical guide enables developers to put their C# and XAML knowledge to work by writing cross-platform apps using the Uno Platform. Packed with tips and practical examples, this book will help you to build applications for common scenarios. You'll begin by learning about the Uno Platform through step-by-step explanations of essential concepts, before moving on to creating cross-platform apps for different lines of business. Throughout this book, you'll work with examples that will teach you how to combine your existing knowledge to manage common development environments and implement frequently needed functionality. By the end of this Uno development book, you will have learned how to write your own cross-platform apps with the Uno Platform and use additional tools and libraries to speed up your app development process.
Table of Contents (13 chapters)
Section 1: Getting to Know Uno Platform
Section 2: Writing and Developing Uno Platform Apps
Section 3: Test, Deploy, and Contribute

Drawing custom graphics with SkiaSharp

UWP and Uno Platform include support for creating shapes and provide basic drawing capabilities. However, sometimes you need to display something in your app that can't easily be done with standard controls, you require fine-grained control, or you encounter performance issues when manipulating large numbers of XAML controls. In these situations, it can be necessary to draw directly onto the UI yourself. One of the ways to do this is with SkiaSharp. SkiaSharp is a cross-platform 2D graphics API based on Google's Skia graphics library that we can use in our Uno Platform apps. To show how simple it is to use, we'll create the final part of our application, which shows on a map where the trains in the network currently are. In just a few lines of code, we'll create something that looks as in the screenshot shown in Figure 6.3:

Figure 6.3 – The network map shown in the app when running in a browser