Mobile Tutorial: Creating a FireMonkey Mobile Application (iOS and Android)

From Appmethod Topics
Jump to: navigation, search

Go Up to Mobile Tutorials: Mobile Application Development (iOS and Android)


This topic describes how to create a "Hello World" mobile application for either the iOS or Android target platform.

Before You Start

To develop mobile (iOS and Android) applications using Appmethod, you need to complete some important configuration steps. This tutorial assumes that you have completed all the necessary setup steps.
For details, see:

Step 1: Create a New Application for Android or iOS

  1. Select File > New > FireMonkey Mobile Application - Object Pascal.
    The FireMonkey Mobile Application wizard appears:
    FireMonkey Mobile Application WizardRev3.png

  2. Select Blank Application. The FireMonkey Mobile Form Designer shows a new form for the default mobile platform, Android:
    NewAndroidApp4.png

  3. Android: See Configuring Your System to Detect Your Android Device to use an Android device. If you do not have an Android device, you can alternatively create an Android emulator.
  4. iOS: If you want to create an iOS app, open the Target Platform node in the Project Manager and double-click iOS Simulator or a connected iOS device:
    Blank FireMonkey iOS application2.png
    WhiteSpace50.png

Step 2: Place Components on the Mobile Form

The first step in creating a mobile application is designing the user interface; this is also the first step when you are targeting desktop platforms. There are many reusable components available in the IDE for creating user interfaces.

  1. Move the mouse pointer over the Tool Palette, and expand the Standard category by clicking the plus (+) icon next to the category name.
  2. Select the TEdit component and either double-click TEdit or drop it onto the FireMonkey Mobile Form Designer.
    Standard Tab.png    TEdit on ToolPalette for FireMonkey.png

    An instance of the TEdit component appears on the form. Here is an Android app:
    AndroidAppEdit.png

  3. Repeat these steps, but now add a TLabel and a TButton component to the form.
  4. Select the edit box and set the KillFocusByReturn property in the Object Inspector to True.
  5. Select the button and change the Text property in the Object Inspector to "Say Hello".
  6. Now you should see three components on the FireMonkey Mobile Form Designer. Here is an iOS app:
    Development an iOS application on Windows.png

  7. After you place these components on the FireMonkey Mobile Form Designer, the IDE automatically sets names for the components.
    To see or to change the name of a component, click the component on the FireMonkey Mobile Form Designer, and then find its Name property in the Object Inspector and the Structure View:
    See Name Property of FireMonkey Button.png

    For a TButton component, the component name is set by default to Button1 (or Button2, Button3, depending on how many TButtons you have created in this application).
  8. The form on which these components are located also has a name. Select the background of the FireMonkey Mobile Form Designer, and select the Name property in the Object Inspector. The name of the form Form1 (or Form2, Form3,...) is displayed. You can also locate the name of the form in the Structure View:
    See Form2 at Structure View.png

  9. You can easily switch to source code by selecting the Code tab at the bottom of the Form Designer.
    You can also press the F12 key to switch between the FireMonkey Mobile Form Designer and the Code Editor:
Switch to source.png

The Code Editor displays the source code that the IDE has generated. You should find three components defined (Edit1, Label1, and Button1):

Source code of new iOS app.png

Note: When you save or run your project, the Uses clauses are updated (to add FMX.StdCtrls for TLabel and FMX.Edit for TEdit).

Step 3: Write an Event Handler for a Button Click by the User

The next step is defining an event handler for the TButton component. You can define event handlers for your mobile application in the same way you define event handlers for desktop applications. For the TButton component, the most typical event is a button click.

Double-click the button on the Form Designer, and Appmethod creates skeleton code that you can use to implement an event handler for the button click event:

New form code.png
WhiteSpace50.png

Now you can implement responses within the Button1Click method.

The following code snippet implements a response that displays a small dialog box, which reads "Hello + <name entered into the edit box>":

  Label1.Text := 'Hello ' + Edit1.Text + ' !';


The quotation marks that surround string literals must be straight single quotation marks (that is, 'string'). You can use the plus (+) sign to concatenate strings. If you need a single quote inside a string, you can use two consecutive single quotes inside a string, which yields a single quote.

While you are typing code, some tooltip hints appear, indicating the kind of parameter you need to specify. The tooltip hints also display the kinds of members that are supported in a given class:

CodeInsight in action for FireMonkey application.png
WhiteSpace50.png


Step 4: Test Your Mobile Application

The implementation of this application is finished, so now you can run the application.
You can click the Run button (RunButton.png) in the IDE, press F9, or select Run > Run from the Appmethod main menu:

Run my first FireMonkey application.png WhiteSpace50.png

Test Your Android Application

Testing on the Android Emulator

Before running your Android app, confirm the target platform in the Project Manager:

AndroidProjectManager.png

Testing on the Android Device

If you complete the steps described in Mobile Tutorial: Set Up Your Development Environment on Windows PC (Android) before creating your new project, you can now run your Android app on an Android device connected to your PC by USB cable.

CreatingAFireMonkeyApp.png

Test Your iOS Application

Testing on the Mac (iOS Simulator)

By default, iOS applications run on the iOS Simulator target platform. You can confirm the target platform in the Project Manager:

ProjectConfiguredForSimulator.png

WhiteSpace50.png

When you run your application, it is deployed to the Mac and then to the iOS Simulator on the Mac. For our app, a form with an edit box and a button is displayed. Enter text into the edit box, and click the Say Hello button:

FirstiOSAppOnMac.png

WhiteSpace50.png

Testing on a Connected iOS Device

If you complete the steps described in Mobile Tutorial: Set Up Your Development Environment on the Mac (iOS) and Mobile Tutorial: Set Up Your Development Environment on Windows PC (iOS) before creating your new project, you can now run your iOS app on an iOS device connected to your Mac by USB cable.

To run your iOS app on a connected iOS device, first select the iOS Device target platform so that the Platform Assistant deploys the application to the connected iOS Device:

SelectDeviceProfile.png

After you select the iOS Device target platform, run your iOS app by clicking the Run button in the IDE, pressing F9 or selecting Run > Run.

On your Mac, you might see a dialog asking your permission to code sign your iOS app. Select either "Always Allow" or "Allow" to sign your app.

CodeSignToiOSApp.png

Then go to your iOS device and wait for your iOS app to appear. Watch for the launch image (the icon is available in $(BDS)\bin\Artwork\iOS, and you can set the launch image in Application Options):

FMXFlame.png

See Also