Advanced Topics

Deep Dive + Specialized Guides

PDF for offline use:

Let us know how you feel about this.


0/250
Thanks for the feedback!

Xamarin.Mac shares the same DNA as our Xamarin.iOS product, so the advanced documents that we have produced for our iOS product are identical to our Mac product.

Mac-specific Guides

Check out these Xamarin.Mac-specific guides on Assemblies, Frameworks, Internals, and Debugging a Native Crash.

Binding Objective-C Libraries for Mac

Learn how to bind Objective-C Mac libraries for use in Xamarin.Mac projects. Refer to the Troubleshooting page to resolve any issues.

Unified API

Introduces the new Unified APIs which allow for simpler code sharing between Mac and iOS codebases as well as introducing support for 64-bit APIs and 64-bit compilation.

API Design

Explains the design principles behind the API Binding.

Assemblies

List of the assemblies supported by Xamarin for your Xamarin.Mac applications.

Target Frameworks

This article covers the types of Target Frameworks (Base Class Libraries) that are available in Xamarin.Mac and the implications of selecting a specific target for your Xamarin.Mac application.

Binding Objective-C  Libraries

When working on iOS, you might encounter cases where you want to consume a third-party Objective-C library. In those situations, you can use Xamarin.iOS's Binding Projects to create a C# binding to the native Objective-C libraries. The project uses the same tools that we use to bring the iOS APIs to C#. This document describes how to bind Objective-C APIs.

Events

More on the event pattern.

Limitations

This section illustrates pitfalls and limitations to be aware of with regards Xamarin.iOS, many of which are applicable to Xamarin.Mac.

Linker

Explains how the linker works to ensure the smallest possible application package, as well as how to modify it's settings and usage.

Localization and Internationalization

This guide covers the the addition of encodings to a Xamarin.iOS application to support internationalization.

mtouch

Notes and information on mtouch.exe, the command line tool that builds your project into an application usable by iOS.

Linking Native Libraries

Xamarin.iOS supports linking with both native C libraries and Objective-C libraries. This document discusses how to link your native C libraries with your Xamarin.iOS project. For information on doing the same for Objective-C libraries, see the  Binding Objective-C Types document.

Objective-C Selectors

Notes and usage for calling Objective-C Selectors (methods) directly.

Preview

Information and instructions on switching to preview channels to get pre-release beta and alpha builds of upcoming releases.

System.Data

Information and instructions on using System.Data to access the built-in SQLite Database system.

Threading

Notes on using threading within Xamarin.iOS applications.

XIB Code Generation

How Xamarin Studio integrates with Xcode's Interface Builder to allow you to use Interface Builder to design UI.

Xamarin Workbook

If it's not already installed, install the Xamarin Workbooks app first. The workbook file should download automatically, but if it doesn't, just click to start the workbook download manually.