Build iOS & Android App with Xamarin and Visual Studio
Build iOS & Android App with Xamarin and Visual Studio

Embarking on the journey to build your first native cross-platform apps for iOS and Android can be an exciting and rewarding experience. Leveraging the power of .NET, Xamarin, and Visual Studio opens up a world of possibilities for developers. In this guide, we will navigate through the entire process, exploring everything from the basics to the advanced features found under File -> New for Xamarin.

Understanding the Foundations

What is .NET?

.NET is the backbone of cross-platform development, offering a high-performant, open-source runtime that supports various languages, editors, and libraries. It forms the foundation for running code seamlessly on different platforms like iOS, Android, and Windows.

Unveiling Xamarin

Xamarin, a framework and tooling within the .NET ecosystem, empowers developers to create apps for iOS, Android, and macOS. It comes equipped with libraries like Xamarin.Forms for cross-platform UI and Xamarin.Essentials for accessing native platform features.

Programming Languages in .NET

.NET supports multiple programming languages, including C#, F#, and Visual Basic. While all these languages can be used for Xamarin app development, C# is widely favored. Additionally, XAML, a markup language, is employed for building user interfaces with Xamarin.

Tools of the Trade

Developers working with .NET have a plethora of tools at their disposal, ranging from command-line interfaces to full-fledged Integrated Development Environments (IDEs) like Visual Studio 2019 and Visual Studio 2019 for Mac. To delve into mobile app development with Xamarin, Visual Studio 2019 or Visual Studio 2019 for Mac is essential.

Installing Visual Studio for Mobile Development

Initiating your cross-platform journey begins with installing Visual Studio 2019 for Windows or Visual Studio 2019 for Mac. For Windows, simply select the “Mobile development with .NET” workload during installation. On Mac, opt for Android and iOS development. iOS development additionally requires the installation of Xcode on your macOS machine.

Creating Your Project

Once Visual Studio 2019 and Xamarin are installed, creating a new project is the next step. Choose the Mobile App (Xamarin.Forms) template. The project templates offer options like Flyout, Tabbed, and Blank, each catering to different application structures. For this guide, let’s dive into the Flyout template, as it aligns with the future of Xamarin app development.

Exploring the Project Structure

Upon project creation, you’ll encounter a solution with multiple projects, including shared code, iOS, and Android. Understanding the structure is crucial—the shared code project contains the majority of the code, while iOS and Android projects house platform-specific configurations.

Navigating the Cross-Platform Project

Inside the shared .NET Standard project, you’ll find essential components:

  • Models: Representing data in your app, e.g., Person, Car, etc.
  • Services: Housing non-UI-related code, such as web service calls.
  • Views: Where XAML UI files reside.
  • ViewModels: Bridging Views and Models, facilitating data display and method calls.

Decoding XAML – AboutPage.xaml

Diving into XAML, the AboutPage.xaml demonstrates the structure of a Xamarin.Forms page. Key elements include the ContentPage, BindingContext, and Resources, providing a glance into the seamless connection between UI and code.

User Interaction and ViewModels

The ViewModel associated with the AboutPage showcases the simplicity and power of data binding. Commands, like the OpenWebCommand, enable interaction and trigger actions when users engage with UI elements.

Quick Changes with XAML Hot Reload

XAML Hot Reload proves invaluable during development, allowing real-time changes to the UI without interrupting the debugging process. This feature enhances efficiency, letting developers experiment with different UI elements and layouts seamlessly.

Deploy to iOS with Hot Restart

Deploying to iOS presents unique challenges, but with options like iOS Remoted Simulator or iOS Hot Restart, developers can debug and test their applications effectively. iOS Hot Restart, in particular, allows deploying debug builds directly to an iOS device connected to a Windows machine.

App.xaml and AppShell.xaml

Delving into App.xaml reveals global resources and styles used across the entire app. AppShell.xaml, on the other hand, acts as the structural foundation of the application, housing styles, colors, tabs, and pages. Understanding these elements is crucial for building a robust Xamarin app.


Embarking on the journey to build your first iOS and Android app with Xamarin and Visual Studio opens up a world of possibilities. From understanding the fundamentals of .NET and Xamarin to exploring the intricacies of cross-platform UI development, this guide provides a comprehensive roadmap.

© 2013 - 2024 Foreignerds. All Rights Reserved