Look-and-Feel When Using the NativeUI Library
You use the NativeUI library to create the user interface for your mobile application. When you compile your application, the NativeUI Class implementation for each platform is replaced by the native version of these classes that will execute when the application is running on the target device.
This class controls how a NativeUI object behaves and looks on the target device. The class to which Mobile Designer translates a NativeUI class depends on whether the NativeUI library has platform-specific support for the platform.
When the NativeUI library includes platform-specific support for a platform,
Mobile Designer translates the NativeUI classes into platform-specific classes. As a result, a user interface object renders as expected on the target device, using the platform look-and-feel and behavior.
The NativeUI provides support for several platforms, such as Android, iOS, Windows Phone, Windows 8, and Windows RT.
For example, if you use the NativeUI object nUICheckboxButton and compile your application for an iOS device, Mobile Designer translates NativeUI object nUICheckboxButton to the iOS UISwitch class. As a result, when the user interface displays on the iOS device, it uses the iOS UISwitch class to render the check box.
When the NativeUI library does
not include platform-specific support for a platform,
Mobile Designer uses a general, graphical skin. In this case, the user interface renders on the target device using a general graphical skin rather than a platform-specific look-and-feel.
The general graphical skin renders all of the available NativeUI objects, including features such as on-screen pop-up keyboards.
NativeUI and Phoney Skins
Phoney is a phone simulator that is not platform-specific. You can use Phoney to test your mobile applications. For more information, see Using webMethods Mobile Designer.
When you use the NativeUI library for your mobile application user interface and run the application in Phoney, the look-and-feel for the user interface depends on whether Mobile Designer provides platform-specific skins for the platform you are simulating in Phoney.
When
Mobile Designer includes platform-specific skins for a simulated platform, Phoney renders the user interface using the Phoney platform-specific skin.
The platform-specific Phoney skins do not provide an exact representation of how the user interface will look on the platform. However, the platform-specific Phoney skins do allow you to get a better idea of how your application's user interface looks in the target platform. The Phoney skins attempt to match a platform's look-and-feel.
When
Mobile Designer does
not include a platform-specific skin for a simulated platform, Phoney renders the user interface using the general graphical skin.
While developing your mobile applications, using Phoney saves you time because you can use Phoney to quickly visualize your application's user interface rather than having to deploy your application to a target device.
Phoney Skins for the iOS Platform
The look-and-feel for the iOS platform changed between iOS 6 and iOS 7. Mobile Designer provides Phoney skins for both the iOS 6 and iOS 7 version. By default, the version of the iOS Phoney skin that Mobile Designer uses depends on the type of iOS device you are simulating in Phoney.
If you are simulating an iOS device that supports iOS 7,
Mobile Designer uses the iOS 7 Phoney skin for the simulated iOS device.
If you are simulating an iOS device that does
not support iOS 7,
Mobile Designer uses the iOS 6 Phoney skin.
The iOS devices that do not support iOS 7 are the first generation iPhone, iPhone 3G, iPhone 3GS, first generation iPad, first generation iPod Touch, iPod Touch 2G, iPod Touch 3G and iPod Touch 4G.
You can override the default that Phoney uses for an iOS device using the MD_PFRENDERER_IOS_VERSION run-time parameter. Set the MD_PFRENDERER_IOS_VERSION to 6 to explicitly indicate you want to use the iOS 6 Phoney skin or 7 to explicitly indicate you want to use the iOS 7 Phoney skin.
If you want the setting to apply to all iOS devices that your application supports, set the parameter in the project_defaults_.xml file, which is located in the project’s target folder. To apply the setting to a specific iOS device, set the property in the target file for that iOS device, target_name.xml.
For example, if you are simulating an iPhone 5 in Phoney and want to use the iOS 6 Phoney skin, use:
<param name="MD_PFRENDERER_IOS_VERSION" int="6"/>
For more information about setting parameters, see Using webMethods Mobile Designer.