# Titanium.UI
The main Titanium.UI module.
# Overview
The UI module is responsible for native user-interface components and interaction inside Titanium. The goal of the UI module is to provide a native experience along with native performance by compiling Javascript code into their native counterparts as part of the build process.
# Design
The UI module is broken down into 3 major area:
Views - Titanium.UI.View are containers that host visual elements such as controls or other views. Views can have their properties customized, such as their border color and radius, can fire events such as swipe events or touches, and can optionally contain a hierarchy or other views as children. In Titanium, most views are specialized to perform both a visual function and set of interaction behaviors such as Titanium.UI.TableView or Titanium.UI.iOS.CoverFlowView. Views are always named with the suffix
View
.Controls - controls, or sometimes referred as widgets, are visual elements such as Titanium.UI.Slider, Titanium.UI.Button and Titanium.UI.Switch. They provide a visual element which has a defined behavior and typical have special configuration and special events. Controls themselves are views and also inherit a views properties, functions and events.
Windows - Titanium.UI.Window are typically top-level visual constructs that are the main part of your interface. An application will always have at least one window and windows can take different shapes and sizes, can have display and interaction properties such as fullscreen or modal and can be customized, such as changing their opacity or background color. Windows themselves are views and also inherit a views properties, functions and events. There are a few specialization of Windows such as a Titanium.UI.TabGroup which offer additional behavior beyond the basic Window. It is considered a best practice to use a Titanium.UI.NavigationWindow as the root of your application.
Titanium uses the Factory Pattern (opens new window) for constructing objects and a general naming pattern for APIs. For example, to construct a Titanium.UI.AlertDialog, you call the method Titanium.UI.createAlertDialog. To create a Titanium.UI.TextArea, you call the method Titanium.UI.createTextArea. Once an object is created, it will be available until it goes out of scope.
# Optimizations
UI objects are optimized by Titanium to not be realized into the drawing context and placed into
the device UI surface until needed. That means that you can create UI objects, set their
properties and add them to their hierarchy without much worry about memory or performance.
When the native drawing surface needs to render a specific view or control, Titanium will
automatically create the view as needed. Additionally, Titanium is optimized to also release
memory once the view is no longer needed, on screen or in low memory situations. However, it's
a good idea to help Titanium along in certain cases where you are no longer using objects. For
example, you should call close
on a Titanium.UI.Window instance when you are no
longer using it. You can safely call open
on the window again to re-open it.
# Global Context
Prior to the release of Titanium SDK 9.0.0.GA
any variable declared in app.js
or alloy.js
was added to a global scope. This however is no longer the case since 9.0.0.GA
. However
it is still possible to add variables to a global scope by adding global.
in front of any
variabled declared in app.js
or alloy.js
. However you should be careful with adding variables
to global context because anything added to the global context will not be garbage-collected.
In Alloy the recommended way to add global context is Alloy.Globals
.
# Portability
Titanium components are designed to be portable across as many platforms as it supports. However, there are cases where a device either does not support a specific feature or capability or where it support additional functionality. For cases where the device OS supports capabilities that other platforms do not, we attempt to place those capabilities in a separate namespace, such as Titanium.UI.iOS. However, in cases where the control is in a common namespace and support additional features, we continue to place that functionality directly on the object.
# Events
Event listeners must be defined before their respective events are likely to be fired, otherwise they are not guaranteed to be called. The open and focus Titanium.UI.Window event listeners, for instance, must be defined before the window is opened.
Evaluating events as late as possible while bearing the above consideration in mind, however, can significantly improve application responsiveness. For example, an event listener for a click event may be defined after the parent window has been opened.
Adding eventListeners
in Alloy makes sure they are bound before they are fired.
# Colors
Many UI components have properties that control their color.
Colors may be specified as a hex triplet to determine the red, green and blue channels. Thus,
'#000000'
is specified for black, '#ff0000'
for red, '#00ff00'
for green, '#0000ff'
for
blue, and '#ffffff'
for white, etc. A channel may be abbreviated when its two hex digits are
identical, such as '#000'
, '#f00'
, '#0f0#'
, '#00f'
and '#fff'
for the above colors,
respectively.
An additional alpha channel is supported as a prefix to the hex triplet (ARGB or AARRGGBB). So, to make
the purple-like color '#ff00ff'
semi-opaque, you could use an alpha value of '55'
, giving,
'#55ff00ff'
or '#5f0f'
. Please note that both iOS and Android use ARGB format, while typical CSS supports RGBA.
Note that while the pound symbol, #
, is not mandatory on iOS when using the hex triplet format,
it is recommended to include it to provide compatibility with other platforms.
iOS and Android also accept colors specified in the form, rgb(R,G,B)
and rgba(R,G,B,A)
, with the color
channels inside the parethesis represented by integer numbers between 0
and 255
and the
alpha channel by a float number between 0
and 1.0
(transparent to opaque, respectively).
For example, an opaque purple could be obtained using 'rgb(255,0,255)'
and a semi-opaque purple
using 'rgba(255,0,255,0.3)'
. Note that although this format will work if the rgb
or rgba
prefix is omitted, this is not officially supported and thus not recommended.
Alternatively, the following set of color names are recognized.
'aqua'
, 'black'
, 'blue'
, 'brown'
, 'cyan'
, 'darkgray'
, 'fuchsia'
, 'gray'
,
'green'
, 'lightgray'
, 'lime'
, 'magenta'
, 'maroon'
, 'navy'
, 'olive'
, 'orange'
,
'pink'
, 'purple'
, 'red'
, 'silver'
, 'teal'
, 'white'
, 'yellow'
.
All color properties also accept a value of 'transparent'
.
On Android, if you want to create a semi-transparent window, set the opacity
property before opening the window.
On iOS, you can set a global tinting using Titanium.UI.tintColor. All child views will inherit
the tint color by default and are able to override the color using tintColor
on their own views.
The default tintColor
on iOS is the blue (system-color).
If a color property is undefined, the default color of the particular UI element is applied. If a color value is not valid on iOS, the default color is applied, whereas, on Android, the color yellow is applied.
On iOS, you may use named system colors. See the Titanium.UI.Color documentation for more details.
# Dark Mode
In iOS 13 Apple introduced support for users to adopt a system-wide Dark Mode setting where the screens, view, menus, and controls use a darker color palette. You can read more about this in the Apple Human Interface Guidelines.
There are two aspects to dark mode that can be specified for your app, colors and images.
# Specifying Dark Mode colors
To specify colors for dark mode, also known as semantic colors, first create a file called semantic.colors.json
in the Resources directory for classic applications, or in the assets directory for Alloy applications. Then you can specify color names in the following format:
{
"textColor": { // the name for your color
"dark": {
"color": "#ff85e2", // hex color code to be set
"alpha": "50" // can be set from a range of 0.0-100.0, integer or float
},
"light": "#ff1f1f" // can be a hex color (with alpha via ARGB/AARRGGBB)
}
}
To reference these colors in your application use the Titanium.UI.fetchSemanticColor API, this is a cross platform API that on iOS 13 and above will use the native method that checks the users system-wide setting, and in all other instances will check the Titanium.UI.semanticColorType property and return the correct color for the current setting.
You may also directly use the named of the colors as values to any color properties on UI elements.
# Specifying Dark Mode images
Note: Dark Mode images are iOS only.
To specify dark mode images, use the -dark
suffix on the image name. When building your app the images are set as the dark mode variant, then refer to images as normal and iOS will select the correct image dependent on the users system-wide setting.
For example given an image logo.png
with @2x
and @3x
variants, the following dark mode images should exist:
- logo-dark.png
- logo-dark@2x.png
- logo-dark@3x.png
And you would reference the image as before using logo-dark.png
# Examples
# Color Demo
The following example demonstrates all the color formats, and color names, that are intended to be supported by Titanium. See the Titanium.UI section for details.
var colorArray = [
'#ff00ff', '#f0f', 'rgb(255,0,255)',
'transparent', '#55ff00ff', '#5f0f', 'rgba(255,0,255,0.3)',
'aqua', 'black', 'blue', 'brown', 'cyan', 'darkgray', 'fuchsia', 'gray', 'green',
'lightgray', 'lime', 'magenta', 'maroon', 'navy', 'olive', 'orange', 'pink',
'purple', 'red', 'silver', 'teal', 'white', 'yellow',
];
var win = Ti.UI.createWindow({
backgroundColor: 'black',
exitOnClose: true,
fullscreen: false,
layout: 'vertical',
title: 'Color Demo'
});
var rows = [];
var row;
for (var i=0, ilen = colorArray.length; i < ilen; i++){
row = Ti.UI.createTableViewRow({
color:'black',
backgroundColor: colorArray[i],
title: colorArray[i],
height: 40
});
rows.push(row);
}
var table = Ti.UI.createTableView({
data: rows,
backgroundColor: 'white'
});
win.add(table);
win.open();
# Properties
# backgroundColor
Sets the background color of the master view (when there are no windows or other top-level controls displayed).
The default background color may also show through if you use semi-transparent windows.
# backgroundImage
Local path or URL to an image file for setting a background for the master view (when there are no windows or other top-level controls displayed).
The default background image may also show through if you use semi-transparent windows.
# overrideUserInterfaceStyle
Forces the app to used assigned theme instead of the system theme.
When set to USER_INTERFACE_STYLE_DARK or USER_INTERFACE_STYLE_LIGHT, the app will ignore the system's current theme and use the theme assigned to this property instead.
When set to USER_INTERFACE_STYLE_UNSPECIFIED, the app will use the system's current theme. To determine what the system's current theme is, you must read the userInterfaceStyle property.
See UI_MODE_NIGHT_MASK.
Default: Titanium.UI.USER_INTERFACE_STYLE_UNSPECIFIED
# semanticColorType DEPRECATED
DEPRECATED SINCE 9.1.0
Use userInterfaceStyle instead.
The current mode for the device (corresponding to night/dark or light/normal)
# tintColor
Sets the global tint color of the application. It is inherited by the child views and can be
overwritten by them using the tintColor
property.
# userInterfaceStyle READONLY
The style associated with the user interface.
Use this property to determine whether your interface should be configured with a dark or light appearance. The default value of this trait is set to the corresponding appearance setting on the user's device.
See UI_MODE_NIGHT_MASK.
# Methods
# convertUnits
Converts one type of unit to another using the metrics of the main display.
As this method does not support percentages, 0
is returned if they are specified.
Parameters
Name | Type | Description |
---|---|---|
convertFromValue | String | Measurement and optional unit to convert from, i.e. 160, "120dip". Percentages are not accepted. |
convertToUnits | Number | Desired unit for the conversion result. |
Returns
- Type
- Number
# create2DMatrix DEPRECATED
DEPRECATED SINCE 8.0.0
Use createMatrix2D instead.
Creates and returns an instance of Titanium.UI.2DMatrix.
Parameters
Name | Type | Description |
---|---|---|
parameters | Matrix2DCreationDict | Initial transformation of the matrix. |
Returns
- Type
- Titanium.UI.2DMatrix
# create3DMatrix DEPRECATED
DEPRECATED SINCE 8.0.0
Use createMatrix3D instead.
Creates and returns an instance of Titanium.UI.3DMatrix.
Parameters
Name | Type | Description |
---|---|---|
parameters | Matrix3DCreationDict | Initial transformation of the matrix. |
Returns
- Type
- Titanium.UI.3DMatrix
# createActivityIndicator
Creates and returns an instance of Titanium.UI.ActivityIndicator.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.ActivityIndicator> | Properties to set on a new object, including any defined by Titanium.UI.ActivityIndicator except those marked not-creation or read-only. |
Returns
# createAlertDialog
Creates and returns an instance of Titanium.UI.AlertDialog.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.AlertDialog> | Properties to set on a new object, including any defined by Titanium.UI.AlertDialog except those marked not-creation or read-only. |
Returns
# createAnimation
Creates and returns an instance of Titanium.UI.Animation.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.Animation> | Properties to set on a new object, including any defined by Titanium.UI.Animation except those marked not-creation or read-only. |
Returns
# createAttributedString
Creates and returns an instance of Titanium.UI.AttributedString.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.AttributedString> | Properties to set on a new object, including any defined by Titanium.UI.AttributedString except those marked not-creation or read-only. |
Returns
# createButton
Creates and returns an instance of Titanium.UI.Button.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.Button> | Properties to set on a new object, including any defined by Titanium.UI.Button except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.Button
# createButtonBar
Creates and returns an instance of Titanium.UI.ButtonBar.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.ButtonBar> | Properties to set on a new object, including any defined by Titanium.UI.ButtonBar except those marked not-creation or read-only. |
Returns
# createColor
Creates and returns an instance of Titanium.UI.Color.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.Color> | Properties to set on a new object, including any defined by Titanium.UI.Color except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.Color
# createDashboardItem
Creates and returns an instance of Titanium.UI.DashboardItem.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.DashboardItem> | Properties to set on a new object, including any defined by Titanium.UI.DashboardItem except those marked not-creation or read-only. |
Returns
# createDashboardView
Creates and returns an instance of Titanium.UI.DashboardView.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.DashboardView> | Properties to set on a new object, including any defined by Titanium.UI.DashboardView except those marked not-creation or read-only. |
Returns
# createEmailDialog
Creates and returns an instance of Titanium.UI.EmailDialog.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.EmailDialog> | Properties to set on a new object, including any defined by Titanium.UI.EmailDialog except those marked not-creation or read-only. |
Returns
# createImageView
Creates and returns an instance of Titanium.UI.ImageView.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.ImageView> | Properties to set on a new object, including any defined by Titanium.UI.ImageView except those marked not-creation or read-only. |
Returns
# createLabel
Creates and returns an instance of Titanium.UI.Label.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.Label> | Properties to set on a new object, including any defined by Titanium.UI.Label except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.Label
# createListSection
Creates and returns an instance of Titanium.UI.ListSection.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.ListSection> | Properties to set on a new object, including any defined by Titanium.UI.ListSection except those marked not-creation or read-only. |
Returns
# createListView
Creates and returns an instance of Titanium.UI.ListView.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.ListView> | Properties to set on a new object, including any defined by Titanium.UI.ListView except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.ListView
# createMaskedImage
Creates and returns an instance of Titanium.UI.MaskedImage.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.MaskedImage> | Properties to set on a new object, including any defined by Titanium.UI.MaskedImage except those marked not-creation or read-only. |
Returns
# createMatrix2D
Creates and returns an instance of Titanium.UI.Matrix2D.
Parameters
Name | Type | Description |
---|---|---|
parameters | Matrix2DCreationDict | Initial transformation of the matrix. |
Returns
- Type
- Titanium.UI.Matrix2D
# createMatrix3D
Creates and returns an instance of Titanium.UI.Matrix3D.
Parameters
Name | Type | Description |
---|---|---|
parameters | Matrix3DCreationDict | Initial transformation of the matrix. |
Returns
- Type
- Titanium.UI.Matrix3D
# createNavigationWindow
Creates and returns an instance of Titanium.UI.NavigationWindow.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.NavigationWindow> | Properties to set on a new object, including any defined by Titanium.UI.NavigationWindow except those marked not-creation or read-only. |
Returns
# createNotification
Creates and returns an instance of Titanium.UI.Notification.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.Notification> | Properties to set on a new object, including any defined by Titanium.UI.Notification except those marked not-creation or read-only. |
Returns
# createOptionBar
Creates and returns an instance of Titanium.UI.OptionBar.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.OptionBar> | Properties to set on a new object, including any defined by Titanium.UI.OptionBar except those marked not-creation or read-only. |
Returns
# createOptionDialog
Creates and returns an instance of Titanium.UI.OptionDialog.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.OptionDialog> | Properties to set on a new object, including any defined by Titanium.UI.OptionDialog except those marked not-creation or read-only. |
Returns
# createPicker
Creates and returns an instance of Titanium.UI.Picker.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.Picker> | Properties to set on a new object, including any defined by Titanium.UI.Picker except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.Picker
# createPickerColumn
Creates and returns an instance of Titanium.UI.PickerColumn.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.PickerColumn> | Properties to set on a new object, including any defined by Titanium.UI.PickerColumn except those marked not-creation or read-only. |
Returns
# createPickerRow
Creates and returns an instance of Titanium.UI.PickerRow.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.PickerRow> | Properties to set on a new object, including any defined by Titanium.UI.PickerRow except those marked not-creation or read-only. |
Returns
# createProgressBar
Creates and returns an instance of Titanium.UI.ProgressBar.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.ProgressBar> | Properties to set on a new object, including any defined by Titanium.UI.ProgressBar except those marked not-creation or read-only. |
Returns
# createRefreshControl
Creates and returns an instance of Titanium.UI.RefreshControl.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.RefreshControl> | Properties to set on a new object, including any defined by Titanium.UI.RefreshControl except those marked not-creation or read-only. |
Returns
# createScrollableView
Creates and returns an instance of Titanium.UI.ScrollableView.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.ScrollableView> | Properties to set on a new object, including any defined by Titanium.UI.ScrollableView except those marked not-creation or read-only. |
Returns
# createScrollView
Creates and returns an instance of Titanium.UI.ScrollView.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.ScrollView> | Properties to set on a new object, including any defined by Titanium.UI.ScrollView except those marked not-creation or read-only. |
Returns
# createSearchBar
Creates and returns an instance of Titanium.UI.SearchBar.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.SearchBar> | Properties to set on a new object, including any defined by Titanium.UI.SearchBar except those marked not-creation or read-only. |
Returns
# createShortcut
Creates and returns an instance of Titanium.UI.Shortcut.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.Shortcut> | Properties to set on a new object, including any defined by Titanium.UI.Shortcut except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.Shortcut
# createShortcutItem
Creates and returns an instance of Titanium.UI.ShortcutItem.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.ShortcutItem> | Properties to set on a new object, including any defined by Titanium.UI.ShortcutItem except those marked not-creation or read-only. |
Returns
# createSlider
Creates and returns an instance of Titanium.UI.Slider.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.Slider> | Properties to set on a new object, including any defined by Titanium.UI.Slider except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.Slider
# createSwitch
Creates and returns an instance of Titanium.UI.Switch.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.Switch> | Properties to set on a new object, including any defined by Titanium.UI.Switch except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.Switch
# createTab
Creates and returns an instance of Titanium.UI.Tab.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.Tab> | Properties to set on a new object, including any defined by Titanium.UI.Tab except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.Tab
# createTabbedBar
Creates and returns an instance of Titanium.UI.TabbedBar.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.TabbedBar> | Properties to set on a new object, including any defined by Titanium.UI.TabbedBar except those marked not-creation or read-only. |
Returns
# createTabGroup
Creates and returns an instance of Titanium.UI.TabGroup.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.TabGroup> | Properties to set on a new object, including any defined by Titanium.UI.TabGroup except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.TabGroup
# createTableView
Creates and returns an instance of Titanium.UI.TableView.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.TableView> | Properties to set on a new object, including any defined by Titanium.UI.TableView except those marked not-creation or read-only. |
Returns
# createTableViewRow
Creates and returns an instance of Titanium.UI.TableViewRow.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.TableViewRow> | Properties to set on a new object, including any defined by Titanium.UI.TableViewRow except those marked not-creation or read-only. |
Returns
# createTableViewSection
Creates and returns an instance of Titanium.UI.TableViewSection.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.TableViewSection> | Properties to set on a new object, including any defined by Titanium.UI.TableViewSection except those marked not-creation or read-only. |
Returns
# createTextArea
Creates and returns an instance of Titanium.UI.TextArea.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.TextArea> | Properties to set on a new object, including any defined by Titanium.UI.TextArea except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.TextArea
# createTextField
Creates and returns an instance of Titanium.UI.TextField.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.TextField> | Properties to set on a new object, including any defined by Titanium.UI.TextField except those marked not-creation or read-only. |
Returns
# createToolbar
Creates and returns an instance of Titanium.UI.Toolbar.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.Toolbar> | Properties to set on a new object, including any defined by Titanium.UI.Toolbar except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.Toolbar
# createView
Creates and returns an instance of Titanium.UI.View.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.View> | Properties to set on a new object, including any defined by Titanium.UI.View except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.View
# createWebView
Creates and returns an instance of Titanium.UI.WebView.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.WebView> | Properties to set on a new object, including any defined by Titanium.UI.WebView except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.WebView
# createWindow
Creates and returns an instance of Titanium.UI.Window.
Parameters
Name | Type | Description |
---|---|---|
parameters | Dictionary<Titanium.UI.Window> | Properties to set on a new object, including any defined by Titanium.UI.Window except those marked not-creation or read-only. |
Returns
- Type
- Titanium.UI.Window
# fetchSemanticColor
Fetches the correct color to be used with a UI element dependent on the users current dark mode setting on iOS 13 and above, or the semanticColorType setting in other instances.
Will return a valid string value to be used for color properties on Android. This may be a hex string or an rgba()
function.
Parameters
Name | Type | Description |
---|---|---|
colorName | String | Name of the semantic color defined in the applications colorset. |
Returns
- Type
- Titanium.UI.Color | String
# Events
# userinterfacestyle
Fired when the userInterfaceStyle
changes.
Properties
Name | Type | Description |
---|---|---|
value | Number | The new userInterfaceStyle value. |
source | Object | Source object that fired the event. |
type | String | Name of the event fired. |
bubbles | Boolean | True if the event will try to bubble up if possible. |
cancelBubble | Boolean | Set to true to stop the event from bubbling. |
# Constants
# ANIMATION_CURVE_EASE_IN
Use with curve to specify an animation that starts slowly and speeds up.
# ANIMATION_CURVE_EASE_IN_OUT
Use with curve to specify an animation that starts slowly, and speeds up, then slows down at the end of the animation.
# ANIMATION_CURVE_EASE_OUT
Use with curve to specify an animation that starts quickly, then slows down at the end of the animation.
# ANIMATION_CURVE_LINEAR
Use with curve to specify an animation that proceeds at a constant rate.
# ATTRIBUTE_BACKGROUND_COLOR
Use with type to specify a background color.
Use a color name or hex value for value.
See Attribute for more information.
# ATTRIBUTE_BASELINE_OFFSET
Use with type to apply a different baseline to the text.
Set value to a number to specify how many pixels to raise or lower the text.
See Attribute for more information.
# ATTRIBUTE_EXPANSION
Use with type to stretch the text horizontally.
Set value to a float value to specify how much to stretch the text.
For iOS, the default value is 0.0 and has no minimum/maximum range specified. For Windows, the default value is 0.0 and the valid range is between 0.5 and 1.0.
See Attribute for more information.
# ATTRIBUTE_FONT
Use with type to specify a font.
Use a Font dictionary for value.
See Attribute for more information.
# ATTRIBUTE_FOREGROUND_COLOR
Use with type to specify a font color.
Use a color name or hex value for value.
See Attribute for more information.
# ATTRIBUTE_KERN
Use with type to specify kerning (space between characters).
Set value to a float value specifying how many pixels to increase the character spacing.
See Attribute for more information.
# ATTRIBUTE_LETTERPRESS_STYLE
Use with value to use a letterpress text effect.
Use this constant when type is ATTRIBUTE_TEXT_EFFECT.
See Attribute for more information.
# ATTRIBUTE_LIGATURE
Use with type to enable or disable ligatures.
Set value to 1
to enable ligatures, else 0
to disable.
Ligatures are only supported on certain fonts.
See Attribute for more information.
# ATTRIBUTE_LINE_BREAK DEPRECATED
DEPRECATED SINCE 7.5.0
Use lineBreakMode instead.
Use with type to wrap and truncate the text.
Set value to a Titanium.UI.ATTRIBUTE_LINE_BREAK_*
constant.
See Attribute for more information on type modes.
# ATTRIBUTE_LINE_BREAK_BY_CHAR_WRAPPING
Use with value to wrap words at word boundaries.
Use this constant when type is ATTRIBUTE_LINE_BREAK.
See Attribute for more information.
# ATTRIBUTE_LINE_BREAK_BY_CLIPPING
Use with value to set lines to not draw past the edge of the text container.
Use this constant when type is ATTRIBUTE_LINE_BREAK.
See Attribute for more information.
# ATTRIBUTE_LINE_BREAK_BY_TRUNCATING_HEAD
Use with value to use ellipsis glyph at the beginning of the line for missing text.
Use this constant when type is ATTRIBUTE_LINE_BREAK.
See Attribute for more information.
# ATTRIBUTE_LINE_BREAK_BY_TRUNCATING_MIDDLE
Use with value to use ellipsis glyph at the middle of the line for missing text.
Use this constant when type is ATTRIBUTE_LINE_BREAK.
See Attribute for more information.
# ATTRIBUTE_LINE_BREAK_BY_TRUNCATING_TAIL
Use with value to use ellipsis glyph at the end of the line for missing text.
Use this constant when type is ATTRIBUTE_LINE_BREAK.
See Attribute for more information.
# ATTRIBUTE_LINE_BREAK_BY_WORD_WRAPPING
Use with value to wrap words at word boundaries.
Use this constant when type is ATTRIBUTE_LINE_BREAK.
See Attribute for more information.
# ATTRIBUTE_LINK
Use with type to create a link.
Set value to a URL.
Use the Label's link event to determine when the user triggers a long press (not a click) event on the linked text.
See Attribute for more information.
# ATTRIBUTE_OBLIQUENESS
Use with type to skew the text.
Set value to a float value to specify how much to skew the text.
See Attribute for more information.
# ATTRIBUTE_PARAGRAPH_STYLE
Use with type to manages the behaviour of string set.
Use ParagraphAttribute for the 'value' property in the attribute dictionary. Range for this should be whole string. See Attribute for more information on type modes.
# ATTRIBUTE_SHADOW
Use with type to display a shadow behind the text.
Set value to a shadowDict dictionary.
See Attribute for more information.
# ATTRIBUTE_STRIKETHROUGH_COLOR
Use with type to change the color of the horizontal line.
Use a color name or hex value for value.
See Attribute for more information.
# ATTRIBUTE_STRIKETHROUGH_STYLE
Use with type to place a horizontal line through the text.
Set the value
property to a Titanium.UI.ATTRIBUTE_UNDERLINE_*
constant.
See Attribute for more information.
# ATTRIBUTE_STROKE_COLOR
Use with type to specify a color for the stroke text.
Use a color name or hex value for the value
property in the attributes dictionary.
See Attribute for more information on type modes.
# ATTRIBUTE_STROKE_WIDTH
Use with type to specify the width of the stroke text.
Set value to a float value specifying the size of stroke width as a percentage of the font size. A positive value displays an outline of the charater, while a negative value fills the character.
See Attribute for more information.
# ATTRIBUTE_SUBSCRIPT_STYLE
Use with type to place the text in a lower position.
See Attribute for more information.
# ATTRIBUTE_SUPERSCRIPT_STYLE
Use with type to place the text in an upper position.
See Attribute for more information.
# ATTRIBUTE_TEXT_EFFECT
Use with type to apply a text effect.
Set value to Titanium.UI.ATTRIBUTE_LETTERPRESS_STYLE
to apply a
letterpress effect to the text.
See Attribute for more information.
# ATTRIBUTE_UNDERLINE_BY_WORD
Use with value to draw a line only underneath or through words.
Use this constant when type is either ATTRIBUTE_UNDERLINES_STYLE or ATTRIBUTE_STRIKETHROUGH_STYLE.
See Attribute for more information.
# ATTRIBUTE_UNDERLINE_COLOR
Use with type to change the color of the horizontal line.
Use a color name or hex value for value.
See Attribute for more information.
# ATTRIBUTE_UNDERLINE_PATTERN_DASH
Use with value to draw a dashed line.
Use this constant when type is either ATTRIBUTE_UNDERLINES_STYLE or ATTRIBUTE_STRIKETHROUGH_STYLE.
See Attribute for more information.
# ATTRIBUTE_UNDERLINE_PATTERN_DASH_DOT
Use with value to draw an alternating line of dashes and dots.
Use this constant when type is either ATTRIBUTE_UNDERLINES_STYLE or ATTRIBUTE_STRIKETHROUGH_STYLE.
See Attribute for more information.
# ATTRIBUTE_UNDERLINE_PATTERN_DASH_DOT_DOT
Use with value to draw an alternating line of dashes and two dots.
Use this constant when type is either ATTRIBUTE_UNDERLINES_STYLE or ATTRIBUTE_STRIKETHROUGH_STYLE.
See Attribute for more information.
# ATTRIBUTE_UNDERLINE_PATTERN_DOT
Use with value to draw a dotted line.
Use this constant when type is either ATTRIBUTE_UNDERLINES_STYLE or ATTRIBUTE_STRIKETHROUGH_STYLE.
See Attribute for more information.
# ATTRIBUTE_UNDERLINE_PATTERN_SOLID
Use with value to draw a solid line.
Use this constant when type is either ATTRIBUTE_UNDERLINES_STYLE or ATTRIBUTE_STRIKETHROUGH_STYLE.
See Attribute for more information.
# ATTRIBUTE_UNDERLINE_STYLE_DOUBLE
Use with value to draw a double line.
Use this constant when type is either ATTRIBUTE_UNDERLINES_STYLE or ATTRIBUTE_STRIKETHROUGH_STYLE.
See Attribute for more information.
# ATTRIBUTE_UNDERLINE_STYLE_NONE
Use with value to not draw a line.
Use this constant when type is either ATTRIBUTE_UNDERLINES_STYLE or ATTRIBUTE_STRIKETHROUGH_STYLE.
See Attribute for more information.
# ATTRIBUTE_UNDERLINE_STYLE_SINGLE
Use with value to draw a single line.
Use this constant when type is either ATTRIBUTE_UNDERLINES_STYLE or ATTRIBUTE_STRIKETHROUGH_STYLE.
See Attribute for more information.
# ATTRIBUTE_UNDERLINE_STYLE_THICK
Use with value to draw a thick line.
Use this constant when type is either ATTRIBUTE_UNDERLINES_STYLE or ATTRIBUTE_STRIKETHROUGH_STYLE.
See Attribute for more information.
# ATTRIBUTE_UNDERLINES_STYLE
Use with type to place a horizontal line under the text.
Set the value
property to a Titanium.UI.ATTRIBUTE_UNDERLINE_*
constant.
See Attribute for more information.
# ATTRIBUTE_WRITING_DIRECTION
Use with type to control the direction of the text.
Set value to a Titanium.UI.ATTRIBUTE_WRITING_DIRECTION_*
constant.
See Attribute for more information on type modes.
# ATTRIBUTE_WRITING_DIRECTION_EMBEDDING
Use with value to use the embedded text direction.
Use this constant when type is ATTRIBUTE_WRITING_DIRECTION.
See Attribute for more information.
# ATTRIBUTE_WRITING_DIRECTION_LEFT_TO_RIGHT
Use with value to write text left to right.
Use this constant when type is ATTRIBUTE_WRITING_DIRECTION.
See Attribute for more information.
# ATTRIBUTE_WRITING_DIRECTION_NATURAL
Use with value to use the Unicode Bidirection Algorithm rules P2 and P3 to determine which direction to use.
Use this constant when type is ATTRIBUTE_WRITING_DIRECTION.
See Attribute for more information.
# ATTRIBUTE_WRITING_DIRECTION_OVERRIDE
Use with value to override the text direction.
Use this constant when type is ATTRIBUTE_WRITING_DIRECTION.
See Attribute for more information.
# ATTRIBUTE_WRITING_DIRECTION_RIGHT_TO_LEFT
Use with value to write text right to left.
Use this constant when type is ATTRIBUTE_WRITING_DIRECTION.
See Attribute for more information.
# AUTOFILL_TYPE_ADDRESS_CITY
Specifies the expectation of a city name.
# AUTOFILL_TYPE_ADDRESS_CITY_STATE
Specifies the expectation of a city name combined with a state name.
# AUTOFILL_TYPE_ADDRESS_LINE1
Specifies the expectation of the first line of a street address.
# AUTOFILL_TYPE_ADDRESS_LINE2
Specifies the expectation of the second line of a street address.
# AUTOFILL_TYPE_ADDRESS_STATE
Specifies the expectation of a state name.
# AUTOFILL_TYPE_CARD_EXPIRATION_DATE
Specifies the expectation of a card expiration date.
# AUTOFILL_TYPE_CARD_EXPIRATION_DAY
Specifies the expectation of a card expiration day.
# AUTOFILL_TYPE_CARD_EXPIRATION_MONTH
Specifies the expectation of a card expiration month.
# AUTOFILL_TYPE_CARD_EXPIRATION_YEAR
Specifies the expectation of a card expiration year.
# AUTOFILL_TYPE_CARD_NUMBER
Specifies the expectation of a card number.
# AUTOFILL_TYPE_CARD_SECURITY_CODE
Specifies the expectation of a card security code.
# AUTOFILL_TYPE_COUNTRY_NAME
Specifies the expectation of a country name.
# AUTOFILL_TYPE_FAMILY_NAME
Specifies the expectation of a family name.
# AUTOFILL_TYPE_GIVEN_NAME
Specifies the expectation of a given name.
# AUTOFILL_TYPE_LOCATION
Specifies the expectation of a location, such as a point of interest, an address, or another way to identify a location.
# AUTOFILL_TYPE_MIDDLE_NAME
Specifies the expectation of a middle name.
# AUTOFILL_TYPE_NAME_PREFIX
Specifies the expectation of a prefix or title, such as 'Dr.'
# AUTOFILL_TYPE_NAME_SUFFIX
Specifies the expectation of a suffix, such as 'Jr.'
# AUTOFILL_TYPE_NEW_PASSWORD
Specifies the expectation of a new password.
# AUTOFILL_TYPE_ONE_TIME_CODE
Specifies the expectation of a single-factor SMS login code.
# AUTOFILL_TYPE_ORGANIZATION_NAME
Specifies the expectation of an organization name.
# AUTOFILL_TYPE_POSTAL_CODE
Specifies the expectation of a postal code.
# AUTOFILL_TYPE_SUBLOCALITY
Specifies the expectation of a sublocality.
# AUTOFILL_TYPE_USERNAME
Specifies the expectation of an account or login name.
# AUTOLINK_ALL
Converts all detectable types of data into clickable links.
Two or more autolink constants can be combined using bitwise or. On iOS: Use with the autoLink property.
On Android: Use with autoLink, autoLink, and autoLink properties.
# AUTOLINK_CALENDAR
Converts strings formatted as calendar events into clickable links.
Use with the autoLink property. Two or more autolink constants can be combined using bitwise or.
# AUTOLINK_EMAIL_ADDRESSES
Converts strings formatted as email addresses into clickable links.
Two or more autolink constants can be combined using bitwise or. On iOS: Use with the autoLink property. This property will also convert strings formatted as URLs into clickable links.
On Android: Use with autoLink, autoLink, and autoLink properties.
# AUTOLINK_MAP_ADDRESSES
Converts strings formatted as addresses into clickable links.
Two or more autolink constants can be combined using bitwise or. On iOS: Use with the autoLink property.
On Android: Use with autoLink, autoLink, and autoLink properties.
# AUTOLINK_NONE
Disables converting strings into clickable links.
Two or more autolink constants can be combined using bitwise or. On iOS: Use with the autoLink property.
On Android: Use with autoLink, autoLink, and autoLink properties.
# AUTOLINK_PHONE_NUMBERS
Converts strings formatted as phone numbers into clickable links.
Two or more autolink constants can be combined using bitwise or. On iOS: Use with the autoLink property.
On Android: Use with autoLink, autoLink, and autoLink properties.
# AUTOLINK_URLS
Converts strings formatted as URLs into clickable links.
Two or more autolink constants can be combined using bitwise or. On iOS: Use with the autoLink property. This property will also convert strings formatted as email addresses into clickable links.
On Android: Use with autoLink, autoLink, and autoLink properties.
# BLEND_MODE_DESTINATION_ATOP
Use with mode to specify a blend mode.
# BLEND_MODE_DESTINATION_IN
Use with mode to specify a blend mode.
# BLEND_MODE_DESTINATION_OUT
Use with mode to specify a blend mode.
# BLEND_MODE_DESTINATION_OVER
Use with mode to specify a blend mode.
# BUTTON_STYLE_FILLED
Use with style to show a solid filled button.
This is not supported on iOS and will show BUTTON_STYLE_TEXT instead.
# BUTTON_STYLE_OPTION_NEGATIVE
Use with style to show a negative themed escape button.
This is a text-only button without a background. It is intended to be used in conjunction with BUTTON_STYLE_OPTION_POSITIVE and BUTTON_STYLE_OPTION_NEUTRAL to show an escape button to exit a window or dialog such as "Cancel", "No", etc.
This is not supported on iOS and will use BUTTON_STYLE_TEXT instead.
On Android, this can be customized by the buttonBarNegativeButtonStyle
attribute. By default,
Android's built-in themes will style this button the same as
BUTTON_STYLE_OPTION_NEUTRAL and
BUTTON_STYLE_TEXT.
# BUTTON_STYLE_OPTION_NEUTRAL
Use with style to show a normal themed option button.
This is a text-only button without a background. It is intended to be used in conjunction with BUTTON_STYLE_OPTION_POSITIVE and BUTTON_STYLE_OPTION_NEGATIVE to show a normal informational button.
This is not supported on iOS and will use BUTTON_STYLE_TEXT instead.
On Android, this can be customized by the buttonBarNeutralButtonStyle
attribute. By default,
Android's built-in themes will style this button the same as
BUTTON_STYLE_OPTION_NEGATIVE and
BUTTON_STYLE_TEXT.
# BUTTON_STYLE_OPTION_POSITIVE
Use with style to show a positive themed accept button.
This is a text-only button without a background. It is intended to be used in conjunction with BUTTON_STYLE_OPTION_NEGATIVE and BUTTON_STYLE_OPTION_NEUTRAL to show an an accept button before closing a window or dialog such as "OK", "Yes", "Done", etc. It is typically colored differently than a BUTTON_STYLE_TEXT themed button on iOS.
On Android, this can be customized by the buttonBarPositiveButtonStyle
attribute.
By default, the Android material theme does not style this button differently than any other text-only button. Only the holo theme will style it differently.
# BUTTON_STYLE_OUTLINED
Use with style to show an unfilled rounded border button.
This is not supported on iOS and will show BUTTON_STYLE_TEXT instead.
# BUTTON_STYLE_TEXT
Use with style to show a text-only button without a background.
# CLIPBOARD_OPTION_EXPIRATION_DATE
Specifies the time and date that you want the system to remove the clipboard items from the clipboard.
Note that on macOS, setting a date in the past does not appear to invalidate items immediately, while on iOS it does.
# CLIPBOARD_OPTION_LOCAL_ONLY
Specifies that the clipboard items should not be available to other devices through Handoff.
# DATE_PICKER_STYLE_AUTOMATIC
Displays a Titanium.UI.Picker using the best visual style on the current platform for date/time selection.
On Android and iOS, a picker with this style will be shown in compatct form, where the picker will be a read-only text field which opens a selection dialog when tapped on.
Note: Prior to iOS 14, this property is only used on iOS Catalyst apps.
# DATE_PICKER_STYLE_COMPACT
Displays a Titanium.UI.Picker as a read-only text field which opens a selection dialog when tapped on.
Note: Prior to iOS 14, this property is only used on iOS Catalyst apps.
# DATE_PICKER_STYLE_INLINE
Displays a Titanium.UI.Picker as a large calendar or clock view for date/time selection.
On iOS, an inlined "time" picker will appear as a text field with spinners for hours and minutes.
# DATE_PICKER_STYLE_WHEELS
Displays a Titanium.UI.Picker as spinner wheels for date/time selection.
# EXTEND_EDGE_ALL
Specifies that all the edges of the window can extend.
One of the group of constants for the extendEdges property.
# EXTEND_EDGE_BOTTOM
Specifies that the bottom edge of the window can extend.
One of the group of constants for the extendEdges property.
# EXTEND_EDGE_LEFT
Specifies that the left edge of the window can extend.
One of the group of constants for the extendEdges property.
# EXTEND_EDGE_NONE
Specifies that none of the edges of the window can extend.
One of the group of constants for the extendEdges property.
# EXTEND_EDGE_RIGHT
Specifies that the right edge of the window can extend.
One of the group of constants for the extendEdges property.
# EXTEND_EDGE_TOP
Specifies that the top edge of the window can extend.
One of the group of constants for the extendEdges property.
# FACE_DOWN
Constant value for face-down orientation.
One of the group of orientation constants for the Titanium.Gesture module, PORTRAIT, UPSIDE_PORTRAIT, LANDSCAPE_LEFT, LANDSCAPE_RIGHT, FACE_UP, FACE_DOWN, and UNKNOWN.
# FACE_UP
Constant value for face-up orientation.
One of the group of orientation constants for the Titanium.Gesture module, PORTRAIT, UPSIDE_PORTRAIT, LANDSCAPE_LEFT, LANDSCAPE_RIGHT, FACE_UP, FACE_DOWN, and UNKNOWN.
# FILL
FILL behavior for UI layout.
The FILL behavior means the view will grow its size to fill its parent.
# HIDDEN_BEHAVIOR_INVISIBLE
Keeps free space when hiding an object.
# HINT_TYPE_ANIMATED
Use when creating a TextField to specify the hintType as animated.
# HINT_TYPE_STATIC
Use when creating a TextField to specify the hintType as static.
# INPUT_BORDERSTYLE_BEZEL
Use a bezel-style border on the input field.
Use with the borderStyle property.
On Android, this can also be used by the borderStyle property.
Android does not support this style and will use INPUT_BORDERSTYLE_LINE instead.
# INPUT_BORDERSTYLE_FILLED
Show an enclosed border with a filled background on the input field.
This is the default Android material theme on Android.
Use with the borderStyle and borderStyle properties.
iOS does not support this style and will use INPUT_BORDERSTYLE_BEZEL instead.
# INPUT_BORDERSTYLE_LINE
Use a simple line border on the input field.
Use with the borderStyle property.
On Android, this can also be used by the borderStyle property.
# INPUT_BORDERSTYLE_NONE
Use no border on the input field.
Use with the borderStyle property.
On Android, this can also be used by the borderStyle property.
# INPUT_BORDERSTYLE_ROUNDED
Use a rounded-rectangle border on the input field.
Use with the borderStyle property.
On Android, this can also be used by the borderStyle property.
# INPUT_BORDERSTYLE_UNDERLINED
Show an underline instead of a border around the input field.
Use with the borderStyle and borderStyle properties.
iOS does not support this style and will use INPUT_BORDERSTYLE_LINE instead.
# INPUT_BUTTONMODE_ALWAYS
Always show buttons on the input field.
Use with the clearButtonMode, leftButtonMode, and rightButtonMode properties.
# INPUT_BUTTONMODE_NEVER
Never show buttons on the input field.
Use with the clearButtonMode, leftButtonMode, and rightButtonMode properties.
# INPUT_BUTTONMODE_ONBLUR
Show buttons on the input field when it loses focus.
Use with the clearButtonMode, leftButtonMode, and rightButtonMode properties.
# INPUT_BUTTONMODE_ONFOCUS
Show buttons on the input field when it gains focus.
Use with the clearButtonMode, leftButtonMode, and rightButtonMode properties.
# INPUT_TYPE_CLASS_NUMBER
Use a keyboard with a number pad only, with the pad keyboard layout. Accepts only numbers.
Use with the inputType properties. This overrides any changes keyboardType does to the inputType of the Android device.
# INPUT_TYPE_CLASS_TEXT
Use an ASCII keyboard, with the standard keyboard layout.
Use with the inputType properties. This overrides any changes keyboardType does to the inputType of the Android device.
# KEYBOARD_APPEARANCE_ALERT DEPRECATED
DEPRECATED SINCE 5.4.0
Use a keyboard appearance suitable for entering text on an alert.
# KEYBOARD_APPEARANCE_DARK
Use the platform-specific dark keyboard appearance.
# KEYBOARD_APPEARANCE_DEFAULT
Use the platform-specific default keyboard appearance.
# KEYBOARD_APPEARANCE_LIGHT
Use the platform-specific light keyboard appearance.
# KEYBOARD_ASCII DEPRECATED
DEPRECATED SINCE 5.2.0
Use KEYBOARD_TYPE_ASCII instead.
Use a keyboard supporting all characters except emoji. Defaults to English letters layout on iOS.
This keyboard type allows the end-user to enter numbers, symbols, and non-English letters too. It just launches with the English letters keyboard layout when shown. This type will not allow the end-user to display an emoji keyboard.
Android keyboards will typically ignore this setting and show the default language keyboard instead, but will still not allow the end-user to enter emoji characters like iOS.
Use with the keyboardType and keyboardType properties.
# KEYBOARD_DECIMAL_PAD DEPRECATED
DEPRECATED SINCE 5.2.0
Use KEYBOARD_TYPE_DECIMAL_PAD instead.
Use a number pad keyboard layout showing only numbers, decimal separator, and sign character.
Use with the keyboardType and keyboardType properties.
On iPad, this behaves the same as KEYBOARD_DEFAULT.
# KEYBOARD_DEFAULT DEPRECATED
DEPRECATED SINCE 5.2.0
Use KEYBOARD_TYPE_DEFAULT instead.
Use the default keyboard, depending on the platform.
Use with the keyboardType and keyboardType properties.
# KEYBOARD_EMAIL DEPRECATED
DEPRECATED SINCE 5.2.0
Use KEYBOARD_TYPE_EMAIL instead.
Use a keyboard suitable for composing email, with the standard keyboard layout.
Use with the keyboardType and keyboardType properties.
# KEYBOARD_NAMEPHONE_PAD DEPRECATED
DEPRECATED SINCE 5.2.0
Use KEYBOARD_TYPE_NAMEPHONE_PAD instead.
Use a keyboard suitable for entering names and phone numbers, with the pad keyboard layout.
Use with the keyboardType and keyboardType properties.
# KEYBOARD_NUMBER_PAD DEPRECATED
DEPRECATED SINCE 5.2.0
Use KEYBOARD_TYPE_NUMBER_PAD instead.
Use a number pad keyboard layout only showing numbers for entering positive integers.
Use with the keyboardType and keyboardType properties.
On iPad, this behaves the same as KEYBOARD_NUMBERS_PUNCTUATION.
# KEYBOARD_NUMBERS_PUNCTUATION DEPRECATED
DEPRECATED SINCE 5.2.0
Use KEYBOARD_TYPE_NUMBERS_PUNCTUATION instead.
Use a keyboard supporting all characters except emoji, defaulting to numbers layout on iOS.
On iOS, this will default to showing the "Numbers and Punctuation" side of the keyboard, but still allows the end-user to switch to other keyboards for entering letters as well. This type will not allow the end-user to display an emoji keyboard.
On Android, this type displays a normal keyboard defaulting to the letter side, but will not allow the end-user to enter emoji characters like iOS.
Use with the keyboardType and keyboardType properties.
# KEYBOARD_PHONE_PAD DEPRECATED
DEPRECATED SINCE 5.2.0
Use KEYBOARD_TYPE_PHONE_PAD instead.
Use a keyboard with a phone-style number pad, with the pad keyboard layout.
Use with the keyboardType and keyboardType properties.
On iPad, this behaves the same as KEYBOARD_NUMBERS_PUNCTUATION.
# KEYBOARD_TYPE_ASCII
Use a keyboard supporting all characters except emoji. Defaults to English letters layout on iOS.
This keyboard type allows the end-user to enter numbers, symbols, and non-English letters too. It just launches with the English letters keyboard layout when shown. This type will not allow the end-user to display an emoji keyboard.
Android keyboards will typically ignore this setting and show the default language keyboard instead, but will still not allow the end-user to enter emoji characters like iOS.
Use with the keyboardType and keyboardType properties.
# KEYBOARD_TYPE_DECIMAL_PAD
Use a number pad keyboard layout showing only numbers, decimal separator, and sign character.
Use with the keyboardType and keyboardType properties.
On iPad, this behaves the same as KEYBOARD_TYPE_DEFAULT. type: Number
# KEYBOARD_TYPE_DEFAULT
Use the default keyboard, depending on the platform.
Use with the keyboardType and keyboardType properties.
# KEYBOARD_TYPE_EMAIL
Use a keyboard suitable for composing email, with the standard keyboard layout.
Use with the keyboardType and keyboardType properties.
# KEYBOARD_TYPE_NAMEPHONE_PAD
Use a keyboard suitable for entering names and phone numbers, with the pad keyboard layout.
Use with the keyboardType and keyboardType properties.
# KEYBOARD_TYPE_NUMBER_PAD
Use a number pad keyboard layout only showing numbers for entering positive integers.
Use with the keyboardType and keyboardType properties.
On iPad, this behaves the same as KEYBOARD_TYPE_NUMBERS_PUNCTUATION.
# KEYBOARD_TYPE_NUMBERS_PUNCTUATION
Use a keyboard supporting all characters except emoji, defaulting to numbers layout on iOS.
On iOS, this will default to showing the "Numbers and Punctuation" side of the keyboard, but still allows the end-user to switch to other keyboards for entering letters as well. This type will not allow the end-user to display an emoji keyboard.
On Android, this type displays a normal keyboard defaulting to the letter side, but will not allow the end-user to enter emoji characters like iOS.
Use with the keyboardType and keyboardType properties.
# KEYBOARD_TYPE_PHONE_PAD
Use a keyboard with a phone-style number pad, with the pad keyboard layout.
Use with the keyboardType and keyboardType properties.
On iPad, this behaves the same as KEYBOARD_TYPE_NUMBERS_PUNCTUATION.
# KEYBOARD_TYPE_TWITTER
Use a keyboard optimized for twitter text entry, with easy access to the @ and
Use with the keyboardType and keyboardType properties.
# KEYBOARD_TYPE_URL
Use a keyboard optimized for entering URLs, with the standard keyboard layout.
Use with the keyboardType and keyboardType properties.
# KEYBOARD_TYPE_WEBSEARCH
Use a keyboard optimized for web search terms and URL entry.
Use with the keyboardType and keyboardType properties. This type features the space and . characters prominently.
Note: This keyboard automatically sets the return key to "Go" (localized).
# KEYBOARD_URL DEPRECATED
DEPRECATED SINCE 5.2.0
Use KEYBOARD_TYPE_URL instead.
Use a keyboard optimized for entering URLs, with the standard keyboard layout.
Use with the keyboardType and keyboardType properties.
# LANDSCAPE_LEFT
Standard landscape orientation (home button on left).
One of the group of orientation constants for the Titanium.Gesture module, PORTRAIT, UPSIDE_PORTRAIT, LANDSCAPE_LEFT, LANDSCAPE_RIGHT, FACE_UP, FACE_DOWN, and UNKNOWN.
# LANDSCAPE_RIGHT
Reverse landscape orientation (home button on right).
One of the group of orientation constants for the Titanium.Gesture module, PORTRAIT, UPSIDE_PORTRAIT, LANDSCAPE_LEFT, LANDSCAPE_RIGHT, FACE_UP, FACE_DOWN, and UNKNOWN.
# LIST_ACCESSORY_TYPE_CHECKMARK
Displays a checkmark on the right side of an item in a list view.
Use to indicate an item in a list is selected.
# LIST_ACCESSORY_TYPE_DETAIL
Displays a detail disclosure button on the right side of an item in a list view.
Use to indicate that selecting this item results in the display of a detailed view of that item.
# LIST_ACCESSORY_TYPE_DISCLOSURE
Displays a disclosure indicator on the right side of an item in a list view.
Use to indicate that selecting this item results in the display of another list, reflecting the next level in the data model hierarchy.
# LIST_ACCESSORY_TYPE_NONE
Do not display anything on the right side of an item in a list view.
# LIST_ITEM_TEMPLATE_CONTACTS
A built-in style for an item with a right-aligned title label on the left side of the cell, which is next to a left-aligned subtitle label.
The title label value and subtitle label value bind to the title
and subtitle
properties, respectively, of the data item. If a property is not set, that element is not
displayed.
# LIST_ITEM_TEMPLATE_DEFAULT
A built-in style for an item with an image view and left-aligned title label.
The text label value and image value bind to the title
and image
properties, respectively,
of the data item. If a property is not set, that element is not displayed.
On Android, the image appears on the right side of the cell, and on iOS, the image appears on the left side of the cell.
# LIST_ITEM_TEMPLATE_SETTINGS
A built-in style for a item with an image view; a left-aligned title label; and a right-aligned subtitle label.
The title label value, subtitle label value and image value bind to the title
, subtitle
and image
properties, respectively, of the data item. If a property is not set, that
element is not displayed.
# LIST_ITEM_TEMPLATE_SUBTITLE
A built-in style for an item with an image view; a black, left-aligned title label across the top of the cell and a subtitle label below it.
The title label value, subtitle label value and image value bind to the title
, subtitle
and image
properties, respectively, of the data item. If a property is not set, that
element is not displayed.
# NOTIFICATION_DURATION_LONG
Specifies a long duration for an Android Toast notification (Titanium.UI.Notification).
# NOTIFICATION_DURATION_SHORT
Specifies a short duration for an Android Toast notification (Titanium.UI.Notification).
# PICKER_TYPE_COUNT_DOWN_TIMER
Use a picker with a countdown timer appearance, showing hours and minutes.
For an actual countdown timer, the application is responsible for setting a timer to update the picker values.
# PICKER_TYPE_PLAIN
Use a plain picker (for values other than date or time).
# PORTRAIT
Orientation constant for portrait mode orientation.
One of the group of orientation constants for the Titanium.Gesture module, PORTRAIT, UPSIDE_PORTRAIT, LANDSCAPE_LEFT, LANDSCAPE_RIGHT, FACE_UP, FACE_DOWN, and UNKNOWN.
# RETURNKEY_CONTINUE
Set the return key text to "Continue".
Use with the returnKeyType and returnKeyType properties.
Note: This constant is only available on iOS devices running iOS 9 or later. Older iOS devices will display RETURNKEY_DEFAULT.
# RETURNKEY_DEFAULT
Use the default return key on the virtual keyboard.
Use with the returnKeyType and returnKeyType properties.
On Android devices, the default return key displays a graphical arrow.
# RETURNKEY_DONE
Set the return key text to "Done".
Use with the returnKeyType and returnKeyType properties.
# RETURNKEY_EMERGENCY_CALL
Set the return key text to "Emergency Call".
Use with the returnKeyType and returnKeyType properties.
# RETURNKEY_GO
Set the return key text to "Go".
Use with the returnKeyType and returnKeyType properties.
# RETURNKEY_GOOGLE
Set the return key text to "Google".
Use with the returnKeyType and returnKeyType properties.
# RETURNKEY_JOIN
Set the return key text to "Join".
Use with the returnKeyType and returnKeyType properties.
# RETURNKEY_NEXT
Set the return key text to "Next".
Use with the returnKeyType and returnKeyType properties.
# RETURNKEY_ROUTE
Set the return key text to "Route".
Use with the returnKeyType and returnKeyType properties.
# RETURNKEY_SEARCH
Set the return key text to "Search".
Use with the returnKeyType and returnKeyType properties.
# RETURNKEY_SEND
Set the return key text to "Send".
Use with the returnKeyType and returnKeyType properties.
# RETURNKEY_YAHOO
Set the return key text to "Yahoo".
Use with the returnKeyType and returnKeyType properties.
# SELECTION_STYLE_DEFAULT
Set the selection style to system default.
Use with the <Titanium.UI.ListView.selectionStyle> and <Titanium.UI.TableView.selectionStyle> properties.
# SELECTION_STYLE_NONE
Set the selection style to none.
Use with the <Titanium.UI.ListView.selectionStyle> and <Titanium.UI.TableView.selectionStyle> properties.
# SEMANTIC_COLOR_TYPE_DARK DEPRECATED
DEPRECATED SINCE 9.1.0
Use USER_INTERFACE_STYLE_DARK instead.
The value returned by semanticColorType when the device is in dark/night mode.
# SEMANTIC_COLOR_TYPE_LIGHT DEPRECATED
DEPRECATED SINCE 9.1.0
Use USER_INTERFACE_STYLE_LIGHT instead.
The value returned by semanticColorType when the device is in light/normal mode.
# SIZE
SIZE behavior for UI layout.
The SIZE behavior means the view will constrain its size fit its contents.
# SWITCH_STYLE_CHECKBOX
Use with style to show a checkbox.
This is supported by Android and macOS apps running on Big Sur (v11) or higher. iOS devices do not support this style and will use SWITCH_STYLE_SLIDER instead.
# SWITCH_STYLE_CHIP
Use with style to show a material design checkable chip widget.
This style is only supported on Android. On iOS, this will use SWITCH_STYLE_SLIDER instead.
# SWITCH_STYLE_TOGGLE_BUTTON
Use with style to show a toggleable button.
This style is only supported on Android. On iOS, this will use SWITCH_STYLE_SLIDER instead.
# TABLE_VIEW_SEPARATOR_STYLE_NONE
The row divider is hidden.
# TABLE_VIEW_SEPARATOR_STYLE_SINGLE_LINE
The row divider is shown as a single line.
# TEXT_ALIGNMENT_CENTER
Center align text.
Use with the textAlign, textAlign and textAlign properties.
This constant is a string on Android, and a number on iOS.
# TEXT_ALIGNMENT_JUSTIFY
Justify align text.
Use with the textAlign, textAlign and textAlign properties.
This constant is a number on iOS and a string on Android.
# TEXT_ALIGNMENT_LEFT
Left align text.
Use with the textAlign, textAlign and textAlign properties.
This constant is a string on Android, and a number on iOS.
# TEXT_ALIGNMENT_RIGHT
Right align text.
Use with the textAlign, textAlign and textAlign properties.
This constant is a string on Android, and a number on iOS.
# TEXT_AUTOCAPITALIZATION_ALL
Auto-capitalize all text in the input field.
Use with the autocapitalization and autocapitalization properties.
# TEXT_AUTOCAPITALIZATION_NONE
Do not auto-capitalize.
Use with the autocapitalization and autocapitalization properties.
# TEXT_AUTOCAPITALIZATION_SENTENCES
Use sentence-style auto-capitalization in the input field.
Use with the autocapitalization and autocapitalization properties.
# TEXT_AUTOCAPITALIZATION_WORDS
Auto-capitalize the first letter of each word in the input field.
Use with the autocapitalization and autocapitalization properties.
# TEXT_ELLIPSIZE_TRUNCATE_CHAR_WRAP
Add ellipses before the first character that doesnt fit.
One of the group of constants for the ellipsize property.
# TEXT_ELLIPSIZE_TRUNCATE_CLIP
Lines are simply not drawn past the edge of the text container.
One of the group of constants for the ellipsize property.
# TEXT_ELLIPSIZE_TRUNCATE_END
Add ellipses at the end of the label if the text is too large to fit.
One of the group of constants for the ellipsize property.
# TEXT_ELLIPSIZE_TRUNCATE_MARQUEE
Turns on a marquee effect of the label if the text is too large to fit. (This requires <Titanium.UI.Label.focusable> to be true)
One of the group of constants for the ellipsize property.
# TEXT_ELLIPSIZE_TRUNCATE_MIDDLE
Add ellipses in the middle of the label if the text is too large to fit.
One of the group of constants for the ellipsize property.
# TEXT_ELLIPSIZE_TRUNCATE_NONE
Disables ellipsizing of the label. The text will be cut off if it is too long.
One of the group of constants for the ellipsize property.
# TEXT_ELLIPSIZE_TRUNCATE_START
Add ellipses at the beginning of the label if the text is too large to fit.
One of the group of constants for the ellipsize property.
# TEXT_ELLIPSIZE_TRUNCATE_WORD_WRAP
Add ellipses at word boundaries, unless the word itself doesn't fit on a single line.
One of the group of constants for the ellipsize property.
# TEXT_STYLE_BODY
The font used for body texts.
One of the group of textStyle constants for the Font Object.
# TEXT_STYLE_CALLOUT
The font used for callouts.
One of the group of textStyle constants for the Font Object.
# TEXT_STYLE_CAPTION1
The font used for standard captions.
One of the group of textStyle constants for the Font Object.
# TEXT_STYLE_CAPTION2
The font used for alternate captions.
One of the group of textStyle constants for the Font Object.
# TEXT_STYLE_FOOTNOTE
The font used in footnotes.
One of the group of textStyle constants for the Font Object.
# TEXT_STYLE_HEADLINE
The font used for headings.
One of the group of textStyle constants for the Font Object.
# TEXT_STYLE_LARGE_TITLE
Specifies the text style for the Font Object.
One of the group of textStyle constants for the Font Object.
# TEXT_STYLE_SUBHEADLINE
The font used for subheadings.
One of the group of textStyle constants for the Font Object.
# TEXT_STYLE_TITLE1
The font used for first level hierarchical headings.
One of the group of textStyle constants for the Font Object.
# TEXT_STYLE_TITLE2
The font used for second level hierarchical headings.
One of the group of textStyle constants for the Font Object.
# TEXT_STYLE_TITLE3
The font used for third level hierarchical headings.
One of the group of textStyle constants for the Font Object.
# TEXT_VERTICAL_ALIGNMENT_BOTTOM
Align text to the bottom of the view.
Use with the verticalAlign and verticalAlign properties.
This constant is a string on Android, and a number on iOS.
# TEXT_VERTICAL_ALIGNMENT_CENTER
Vertically align text to the center of the view.
Use with the verticalAlign and verticalAlign properties.
This constant is a string on Android, and a number on iOS.
# TEXT_VERTICAL_ALIGNMENT_TOP
Align text to the top of the view.
Use with the verticalAlign and verticalAlign properties.
This constant is a string on Android, and a number on iOS.
# UNKNOWN
Orientation constant representing an unknown orientation.
One of the group of orientation constants for the Titanium.Gesture module, PORTRAIT, UPSIDE_PORTRAIT, LANDSCAPE_LEFT, LANDSCAPE_RIGHT, FACE_UP, FACE_DOWN, and UNKNOWN.
# UPSIDE_PORTRAIT
Orientation constant for inverted portait orientation.
One of the group of orientation constants for the Titanium.Gesture module, PORTRAIT, UPSIDE_PORTRAIT, LANDSCAPE_LEFT, LANDSCAPE_RIGHT, FACE_UP, FACE_DOWN, and UNKNOWN.
# URL_ERROR_AUTHENTICATION
Authentication error code reported via error.
# URL_ERROR_CONNECT
Error code reported via error for a failure to connect to host.
# URL_ERROR_FILE
Error code reported via error for a failure to access a file resource on a host, except "file not found", which has its own constant.
# URL_ERROR_FILE_NOT_FOUND
Error code reported via error when a requested file does not exist on the host.
# URL_ERROR_HOST_LOOKUP
Error code reported via error when a host name cannot be resolved, such as via a DNS lookup error.
# URL_ERROR_REDIRECT_LOOP
Error code reported via error when a redirect loop is detected.
# URL_ERROR_SSL_FAILED
Error code reported via error for an SSL failure.
# URL_ERROR_UNKNOWN
Error code reported via error when an unknown error occurs.
# URL_ERROR_UNSUPPORTED_SCHEME
Error code reported via error when a url contains an unsupported scheme.
# USER_INTERFACE_STYLE_DARK
A dark interface style.
Used in the userInterfaceStyle
property. Value indicating that night/dark mode has been set.
See UI_MODE_NIGHT_YES
# USER_INTERFACE_STYLE_LIGHT
A light interface style.
Used in the userInterfaceStyle
property. Value indicating that light/normal mode has been set.
See UI_MODE_NIGHT_NO
# USER_INTERFACE_STYLE_UNSPECIFIED
An unspecified interface style.
Used in the userInterfaceStyle
property. Value indicating that no mode has been set.
See UI_MODE_NIGHT_UNDEFINED