Summary
In this chapter we looked at the Windows Phone 8 architecture and the Android and Windows Phone 8 programming stacks. Now that you have a high-level idea of mapping between the two, we are now going to go one level deeper. In the next section, we will look at the user interface guidelines of Windows Phone 8 applications.
Related Resources
To learn more, visit:
Windows Phone Dev Center. Getting started, download tools and read all about Windows Phone development
Building Apps for Windows Phone 8 Jump Starts. Video series tailored for developers to build Windows Phone apps.
Windows Phone Developer Forums
Developing for Windows Phone Jumpstart Series on Channel 9
Developer Documentation
Windows Phone Code Samples
Other Resources you may find useful:
-
Overview of the Windows Phone Application Platform
-
Windows Phone team blog.
-
Windows Phone Programming: Programming guide and reference documents.
-
Visual C#
-
XAML for Windows Phone
Chapter 2: User Interface Guidelines for the Windows Phone
Microsoft’s Windows Phone uses a novel user interface that sets itself apart with its clean and simple design, emphasis on color and typography. In contrast to the application-focused design of Android, Windows Phone uses an information-centric design. Instead of an array of application icons, the start screen of a Windows Phone consists of dynamic tiles that display critical information at a glance to the user. The tiles are dynamic in the sense they continuously display the up-to-date status of the applications. For example, the Calendar app tile shows you the next appointment, the email tile shows the number of new emails waiting for your attention. Users can personalize their phones by pinning the tiles that they care most about.
Windows Phone introduces a new paradigm called “hubs”. Hubs bring related information together. There are six hubs, namely, People, Pictures, Music + Videos, Marketplace, Office, and Games. The People hub, is more than an address book. It aggregates your address book contacts, as well as people and their updates from Facebook, Twitter, and LinkedIn.
Designing the Application Interface
While Windows Phone user interface is different from that of the Android, there are similarities in the core design principles.
Similar Application Design Goals
Like Android, Windows Phone developers have to keep in mind the compact screen, lower CPU and limited memory while designing the applications. Users can use one application at a time, with just one screen visible. Both Android and Windows Phone are supported on variety of devices with differing screen resolutions and hardware support. Developers must keep this in mind while designing their application. For additional details on how to built multi-resolution apps, read this article. In both Android and Windows Phone, usability and UI design are not after thoughts, but are the primary goals behind. Applications need to be simple and focus on key scenarios that most users care about.
Visual Elements and Direct Manipulation
Like Android, visual elements and direct manipulation of objects by touch are the key characteristics of the Windows Phone application. Windows Phone provides a complete set of UI controls designed for the phone that can be manipulated using touch. The controls provide functionality similar to those on Android. It utilizes similar set of core multi-touch gestures as Android with similar semantics – these include tap, double tap, pan, flick, touch and hold, and pinch and stretch.
Implications of the Similarities for the Developers
For the most part, the application planning process is similar on both the platforms. While designing your Windows Phone application, you will focus on the same information that is critical to the user. Your key design principles from the Android application will get carried over: direct manipulation with multi-touch, the need for immediate feedback and aesthetic appeal, will still remain the same.
While there are similarities in the design principles of the applications on both platforms, pay close attention to the Windows Phone application user interface. It is best to take advantage of the unique features and strengths of the Windows Phone platform.
Design Guidelines
Windows Phone provides clear design guidelines, and recommends consistent UI controls, colors, typography and images. Together, they provide a consistent user experience. This can be contrasted with Android which, for a long time, did not encourage simplicity and consistency among application designs.. Unlike Android, Microsoft strongly encourages you to follow the design guidelines so that the users have a consistent user experience.
XML and XAML
Android UI elements such as widgets and layouts may be specified using XML or created programmatically at runtime or both. Windows Phone uses a similar mechanism. Typically, you use XAML to develop Windows Phone applications. , Extensible Application Markup Language (XAML)is an XML-based markup language used for visual representation of applications in Windows Phone.
While both Android and Windows Phone use XML based languages to specify the UI elements, designing Windows Phone UI is much easier thanks to XAML support in Windows Phone design tools namely, Visual Studio and Blend. Both tools support WYSIWYG UI design and produce common XAML code.
Controls and the Application Interface
The Windows Phone 8 development tools and SDK include a rich collection of controls for Windows Phone that are designed specifically for usability and aesthetics. While you can create your own controls, it is best to use the standard controls wherever possible. These standard controls respond to theme changes and provide a consistent user interface.
The following table shows the mapping between Android controls and corresponding Windows Phone 8 controls.
Android control
|
Windows Phone control
|
Notes
|
Border
|
Border
|
|
ButtonView
|
Button
|
|
AbsoluteLayout
|
Canvas
|
|
CheckBox
|
CheckBox
|
|
GridView
|
Grid
|
|
|
HyperlinkButton
|
|
ImageView
|
Image
|
|
ListView
|
ListBox
|
|
MediaController
|
MediaPlayerLauncher
|
|
MediaPlayer
|
MediaElement
|
|
|
MultiScaleImage
|
|
ViewGroup
|
Panel
|
|
EditText
|
PasswordBox
|
|
ProgressBar
|
ProgressBar
|
|
RadioButton, RadioGroup
|
RadioButton, ToggleSwitch*
|
ToggleSwitch avail on CodePlex
|
ScrollView
|
ScrollViewer
|
|
SeekBar
|
Slider
|
|
LinearLayout
|
StackPanel
|
|
EditText
|
TextBlock
|
|
EditText
|
TextBox
|
|
MapView
|
Map
|
|
WebView
|
WebBrowser
|
|
|
Panorama
|
|
|
Pivot
|
|
TimePicker
|
TimePicker*
|
Available on Codeplex
|
DatePicker
|
DatePicker*
|
Available on Codeplex
|
ExpandableListView
|
|
|
Spinner
|
ListBox
|
|
TableLayout
|
Grid Layout
|
|
ViewFlipper
|
|
|
ZoomControl
|
|
|
TabHost
|
PivotControl
|
|
RatingBar
|
|
|
Toggle button
|
ToggleSwitch*
|
|
* ToggleSwitch and Datepicker/Timepicker control are part of the Windows Phone Toolkit available on Codeplex:
As you can see, Windows Phone offers controls that correspond to many Android controls. While the look and feel is different, they provide similar functionality.
New Controls in Windows Phone
Windows Phone introduces a few controls that have no counterpart on Android. Here are some of the examples:
-
A multi-scale image control allows the user to zoom in and pan a photo.
-
Panorama control is a multi-screen page spanning horizontally beyond the width of the phone. It allows a large amount of related information to be presented. The People hub is a great example of this control.
-
The Pivot control, shown below, is useful to manage views and display information that is logically divided into sections.
Notifications
Both Android and Windows Phone provide notification service, but notifications play a key role in Windows Phone. Windows Phone provides number of different means to show notifications to users – via status bar update, a dialog, as a toast, or live tile notifications. It is the tile notifications that make Windows Phone come alive. Windows Phone sets itself apart with live tiles that show critical information at a glance. Live tiles are used to display non-critical information without disrupting what the user is doing. If you are using status bar notifications in Android, you can use tile notification as a replacement in Windows Phone to show critical information. However, tiles have the ability to provide far more information, including photos, a message and a number.
The notification service also displays toast notifications that provide time sensitive information, such as an SMS. Toast notifications are shown for about 10 seconds and the user may choose to ignore them or click to launch the app directly. These are similar to Android toast notifications.
The following table shows the Windows Phone notifications that are closest to various Android notification mechanisms. While you may replace status bar notifications with Tile notifications, tile notifications provide much richer functionality. Additionally, tile notifications do not require user response.
Android
|
Functionality
|
Windows Phone
|
Status bar notification
|
Persistent information that requires user response.
|
Tile notifications
|
Toast notification
|
Time sensitive non-persistent data that the user may not respond to.
|
Toast Notifications
|
ActionBar vs. Application Bar
In Android, the ActionBar identifies the application and user location. It also shows actions available to the user as well as navigation such as tabs. The status bar on Android shows the device status and various notifications. While both Status bar and ActionBar are at the top of the screen, action bar may be split and may also be shown at the bottom of the screen.
A: Status bar
B: Action bar
The status bar on Windows Phone provides functionality similar to Android status bar. On Windows Phone, Page or application menus are supported using a versatile application bar shown at the bottom of the screen on Windows Phone. The application bar can include up to 4 of the most common views or application tasks. You can also use application bar menus for additional context-sensitive tasks. Application bar does not provide navigation nor tabbed views as provided by the ActionBar.
A: Status bar
B: Title, Navigation
C: Appbar
Android
|
Functionality
|
Windows Phone
|
Status bar
|
Device status and notifications
|
Status bar
|
Action bar
|
Navigation, Title, Buttons for views or actions
|
Back button for back navigation
|
Page title
|
ActionBar
|
Buttons for views or actions
|
App bar
|
Share with your friends: |