Chapter 6. A View to a Kill
Before I go any further, this chapter has a tenuous link to the James Bond movie of the same name. You'll see why shortly. This chapter concentrates on the user interface and how to ensure that you are able to create the same application for all the supported platforms with minimum fuss.
In this chapter, we will:
Create a Xamarin.Forms
application that functions on all the three supported platforms based on an application that only runs on one
Extend the user interface on all three platforms
See how the choice of graphics heavily influences how the end user feels about the application
There is an awful lot to be said about how Apple approached the user interface and something known as user experience. I'm not an Apple fanboy by any stretch of the imagination (not that you'd guess if you've seen my desk recently!), and designing for iOS can be torturous at times, but I doff my cap to them on how it feels.
A former colleague of mine (who was an Android advocate) once said that he would be buying his parents an Apple iPhone 5S over the latest Samsung phone. The reason was that while Android is extremely powerful, for the end user, Apple wins every time. It just works.
When you examine any iOS application from start to finish, everything is designed to follow a familiar and friendly style; even in some of the more poorly designed and constructed apps, this familiarity and friendliness is still there. The graphics are bright, buttons all have soft edges; everything is designed so that the end user has the best possible experience, irrespective of the...
This has been a very long chapter, but it is a chapter that takes you from an okay looking app to an app that looks far more professional. We looked at the problems of how to create a custom view across the three main mobile platforms, how to take the code meant for just one platform, and how leveraging Xamarin Forms can create three applications with very little in the way for developers. Having said that, anything more than a basic UI requires customization on the platform level.
In the next chapter, we'll look at how to connect to various types of web services.