My latest article is a fun Xamarin Forms implementation of the game Sokoban, demonstrating how to port a UWP puzzle game to both Android and iOS while sharing nearly all code across platforms.
I've just published the fifth installment of my Calcium for Xamarin.Forms series.
In this article you see how to share and consume image files between projects in a unified manner. You see how to employ a T4 template to copy image files from a shared project into iOS and Android resources directories; to add them to your iOS and Android projects; and to set the Build Action of the images. Finally, you see how a custom markup extension is used to translate image resource URLs so that images can be referenced in XAML and correctly resolved regardless of platform.
I've just published the fourth installment of my Calcium for Xamarin.Forms series.
In this article you look at defining a custom AppBar in XAML; binding it to collections of command objects and at directly binding AppBar items to viewmodel properties. You see how to employ platform specific rendering to display an AppBar on iOS, Android, and Windows Phone. You learn how the Calcium AppBar is multi-page aware and can be placed within multiple pages hosted in a CarouselPage or a TabbedPage. You see how to display a custom menu in iOS and Android. Finally, you look at how to register a custom platform-specific view renderer.
In this third part of the series you see how to use the same .resx files across all three platforms: Windows Phone, iOS, and Android. You see how to link a .resx file correctly into your Xamarin.iOS project. You learn how to set up T4 templates and link to provided T4 include files to generate Android friendly resources. Finally, you see how to use the x:Static markup extension to consume your localized resources from XAML.
In this second part of my Calcium for Xamarin Forms series you look you see how to extend beyond current Xamarin Forms API capabilities to create a tabbed page or carousel page by binding to a collection of ViewModels. You see how to implement a quasi-data-template selector to materialize viewmodels using MVVM.
Over the last few weeks I've been busy porting Calcium to Xamarin.Forms. Today I've released the first of 6 articles demonstrating some of its key features. In this series you learn how to do things with Xamarin Forms that you’ll not find anywhere else.
For example, you see how to create a cross-platform Application Bar component using the Xamarin Forms native rendering API with Menu Item support that works on iOS, Android, and Windows Phone; and which offers more features than the built-in Windows Phone Application Bar.
You learn how it is possible to place images anywhere in a shared project as Content resources like in Windows Phone, and consume them in the same way across all three platforms.
You learn how to use T4 templates to enable localizability for your Android app. You also see how to create static bindings to your .resx files using T4 generated designer classes; allowing you to localize your app in the same manner for all three platforms.
You see how to extend beyond current Xamarin Forms API capabilities to implement a quasi-data-template selector to materialize viewmodels in an MVVM compatible way.
You learn how to assemble your Visual Studio projects to decrease friction when you are sharing code using the new Shared Project type.
In addition, in this series of articles you are guided through the basics of developing apps using Xamarin.Forms. You learn how to use the Calcium MVVM framework to build multifaceted cross-platform apps with Xamarin Forms.