All in Xamarin

Handling Landscape and Portrait Modes in Xamarin Forms

In the previous post, I showed you how you could handle multiple states for a specific element using the VisualStateManager and defining various groups and VisualStates.

In this post, we will use this same feature to change the UI of an example application so that it hides a title when the device is on portrait mode, so there is more space for the main component of the interface, which will be a ListView.

Handling Visual States in Xamarin Forms

If there is something that can take a good-looking app to an incredible-looking app that may very well be Visual States. By defining different Visual States you are able to define how a certain element must look depending on some interaction from the user. The simpler example is with buttons, with which you are able to see when someone hovers over them (perhaps they change color), someone presses them (maybe in addition to colors the scale also changes), maybe also when they lose focus.

New on Xamarin Forms 3.4 - ImageButtons

It could be a bit of a pain to try to use Images as buttons, for those scenarios when you needed to display a certain image but also needed the user to be able to click on it, with all that that implies. A nice animation, perhaps change of color, and of course the triggering of an event or the ability to bind a Command. As of Xamarin Forms 3.4, this is no longer a pain, now you can define an ImageButton like you would define any element in the interface, and use it similarly to how you would use an Image, and make it respond to how a Button would.

How to Build a Freaking Xamarin Forms App

Take this complete guide to Xamarin.Forms and learn to create a full Xamarin.Forms app that uses XAML to define the interface, that uses the NavigationPage to navigate between pages, that implements local databases with SQLite, that uses ListView and DataBinding to list elements from the database, that creates a ToolbarItem, and that is tested directly from Visual Studio 2017 into an Android and an iOS simulator.