Book Image

Xamarin Blueprints

By : Michael Williams
Book Image

Xamarin Blueprints

By: Michael Williams

Overview of this book

Do you want to create powerful, efficient, and independent apps from scratch that will leverage the Xamarin framework and code with C#? Well, look no further; you’ve come to the right place! This is a learn-as-you-build practical guide to building eight full-fledged applications using Xamarin.Forms, Xamarin Android, and Xamarin iOS. Each chapter includes a project, takes you through the process of building applications (such as a gallery Application, a text-to-speech service app, a GPS locator app, and a stock market app), and will show you how to deploy the application’s source code to a Google Cloud Source Repository. Other practical projects include a chat and a media-editing app, as well as other examples fit to adorn any developer’s utility belt. In the course of building applications, this book will teach you how to design and prototype professional-grade applications implementing performance and security considerations.
Table of Contents (14 chapters)
Xamarin Blueprints
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface

A cleaner code approach to NSLayout


On our previous screen, we built a very simple user interface using NSLayoutContraints.

Would you agree that the code looked quite clunky?

With our AudioPlayerPage, we are going to use a cleaner approach to coding the NSLayoutConstraints. Firstly, create a new folder called Extras, and add a new file called DictionaryViews.cs:

This class is going to inherit the IEnumerable interface in order to create an NSDictionary; part of this interface is we must specify the GetEnumerator function. It will pull this from the NSDictionary; we also have our Add function, which simply adds a new UIView to the dictionary. Then we have the static implicit operator which will return the object as an NSDictionary (this is used so we can directly pass the object as an NSDictionary to the FromVisualLayout function):

public class DictionaryViews : IEnumerable 
    { 
        private readonly NSMutableDictionary _nsDictionary; 
 
        public DictionaryViews() 
        { 
   ...