Global

The APIs that reside in the global scope, which may be called without a namespace prefix.

Titanium provides a number of global built-in objects, detailed below.

JSON

Titanium provides a built-in JSON object two functions, parse and stringify.

String Utilities

Titanium includes several extra utility functions for formatting text, attached to the global String object.

console

Titanium provides console support familiar to many javascript developers for logging at the toplevel, in addition to the Titanium.API logging facilities.

Timers

Titanium has built-in support for one-off and repeating timers:

Alert

Titanium has a built-in convenience function alert which can be used as an alias for the AlertDialog module.

Locale

The L macro can also be used as an alias for the Titanium.Locale.getString method.

  • 0.8
  • 0.8
  • 0.8
Defined By

Methods

Global
( key, [hint] ) : String
An alias for Titanium.Locale.getString. ...

An alias for Titanium.Locale.getString.

Parameters

  • key : String

    Key used to lookup the localized string.

  • hint : String (optional)

    Text to return if key is not found.

Returns

  • String

    Localized string defined by key, or value of hint otherwise.

Global
( message )
Displays a pop-up alert dialog with the passed in message. ...

Displays a pop-up alert dialog with the passed in message.

This function is a shortcut for creating and displaying an alert dialog. For example, the following two statements produce the same result.

alert('Danger, Will Robinson!');

Ti.UI.createAlertDialog({ message: 'Danger, Will Robinson!' }).show();

Note that unlike a web browser-based version of alert, the method is asynchronous. However, only one alert dialog will be visible and modal at a time.

Be aware that this method may be removed in the future.

Parameters

  • message : String

    Alert message.

Returns

  • void
Global
( timerId )
Cancels an interval timer. ...

Cancels an interval timer.

Parameters

  • timerId : Number

    Unique timer identifier returned by setInterval.

Returns

  • void
Global
( timerId )
Cancels a one-time timer. ...

Cancels a one-time timer.

Parameters

  • timerId : Number

    Unique timer identifier returned by setTimeout.

Returns

  • void
Global
( encodedURI ) : String
Replaces each escape sequence in the specified string, created using the encodedURI method, with the character that i...

Replaces each escape sequence in the specified string, created using the encodedURI method, with the character that it represents.

For more information, see the MDN website for encodeURIComponent and decodeURIComponent.

Parameters

  • encodedURI : String

    Text that optionally contains encoded escape sequences.

Returns

  • String

    Decoded string.

Global
( string ) : String
Replaces each special character in the specified string with the equivalent URI escape sequence. ...

Replaces each special character in the specified string with the equivalent URI escape sequence. Useful for encoding URIs.

For more information, see the MDN website for encodeURIComponent and decodeURIComponent.

Parameters

  • string : String

    Text that optionally contains special characters.

Returns

  • String

    Encoded string.

Global
( moduleId ) : Object
Loads either a native Titanium module or a CommonJS module. ...

Loads either a native Titanium module or a CommonJS module.

The require function takes a module identifier as its argument and returns an object with references to the module's exported symbols.

Native Titanium Module

To load a native Titanium module:

  1. Install the module to the project or copy it to the Titanium SDK home directory.
  2. Add the module as a dependency to the project by modifying the modules section of the tiapp.xml file.
  3. Initialize the module with the require method by passing the module ID to the method.

For detailed instructions, refer to Using a Module.

CommonJS Module

To load a local CommonJS module, place the CommonJS module in the Resources directory of your project. Pass the require method the path to the file without the Resources directory, platform-specific directory and the .js extension.

Note that the appropriate platform-specific Resources subdirectory is merged into the main Resources directory at build time. For example, suppose the following files exist.

  • Resources/app.js
  • Resources/ui/MainWindow.js
  • Resources/iphone/ui/TaskWindow.js
  • Resources/android/ui/TaskWindow.js

The appropriate TaskWindow.js file is moved into the Resources/ui directory of the built application. To include both the MainWindow module and the platform-specific TaskWindow module from any JavaScript file in the project:

 // load main window module from ui subdirectory
 var mainWindow = require('ui/MainWindow');

 // load platform-specific task window module
 var taskWindow = require('ui/TaskWindow');

For more information, see the Official CommonJS website about CommonJS Modules/1.1 Specification.

Alloy

For Alloy, place the CommonJS modules in the app/lib directory of your Alloy project, then load the module with the require method without the app/lib path and .js extension.

Starting with Alloy 1.5.0, you can add platform-specific directories to the app/lib directory. Do not include the platform-specific directory when referencing the CommonJS module.

For example, a module file app/lib/android/myModule/module.js may be loaded by app/controllers/index.js using:

require('myModule/module');

Android

Additionally, on Android, an absolute path to a module may be specified using a path separator (/) at the beginning of the path.

For example, a module file Resources/myModule/module.js may be required by Resources/example/example.js using either of the following:

require('../myModule/module')
require ('/myModule/module')

Examples

Require a Native Module

To load a native module with the ID com.mycompany.module:

var module = require('com.mycompany.module');

Require a JavaScript Module

myModule.js:

exports.message = "hello world";

app.js:

var myModule = require('myModule');
alert(myModule.message);

Parameters

  • moduleId : String

    Native module ID or local path to a JavaScript file minus the .js extension.

Returns

  • Object

    Exported exports object of the required module.

Global
( function, delay ) : Number
Executes a function repeatedly with a fixed time delay between each call to that function. ...

Executes a function repeatedly with a fixed time delay between each call to that function.

Note that although the interval is not guaranteed to be exact, the interval between calls will be no less than the specified delay.

Returns a unique timer identifier that can be passed to clearInterval to cancel this timer.

For more information, see the MDN website for setInterval.

Examples

Update a label once every second, and stop at 10 seconds

var count = 0;
var timer = setInterval(function(){
    count++;
    label.text = "count: " + count;
    if (count == 10) {
        clearInterval(timer);
    }
}, 1000);

Parameters

  • function : Callback

    Function to call.

  • delay : Number

    Time in milliseconds to wait between calls to function.

Returns

  • Number

    Unique timer identifier.

Global
( function, delay ) : Number
Executes code or a function after a delay. ...

Executes code or a function after a delay.

Note that although the timeout is not guaranteed to be exact, the delay before the function is invoked will be no less than the specified delay.

Returns a unique timer identifier that can be passed to clearTimeout to cancel this timer.

For more information, see the MDN website for setTimeout.

Examples

Execute a function in 500 milliseconds

setTimeout(function(){
    Ti.API.debug('Called using setTimeout');
}, 500);

Parameters

  • function : Callback

    Code or function to call.

  • delay : Number

    Time in milliseconds to wait before the function is called.

Returns

  • Number

    Unique timer identifier.