You are reading 12.7.0. See this page in 13.4.1.
Titanium.UI.Android
Extends Titanium.ModuleTitanium.Proxy
The Android-specific UI capabilities. All properties, methods and events in this namespace will only work on Android systems.
Drawer Layout
The drawer-layout components acts as a top-level container for window content that allows
for interactive "drawer" views to be pulled out from one or both vertical edges of the window.
It is represented by a centerView and optional leftView and rightView components that
can be swiped in and out with additional configuration and transitions. Learn more about
drawer-layouts in it's dedicated Titanium.UI.Android.DrawerLayout docs.
Examples
Android Preferences Example
Create preferences interface for the application.
app.js
var button = Ti.UI.createButton({
title: 'Click to Open Preferences'
});
button.addEventListener('click', function() {
Ti.API.info('Current value for editText: ' + Ti.App.Properties.getString('editText'));
Ti.UI.Android.openPreferences();
});
currentWindow.add(button);
platform/android/res/xml/preferences.xml
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
android:title="Preferences">
<PreferenceScreen
android:title="Misc. Preferences"
android:summary="Click to see more options">
<EditTextPreference
android:title="Edit Text Preference"
android:summary="You may enter a string"
android:defaultValue=""
android:key="editText" />
</PreferenceScreen>
<PreferenceCategory android:title="Category One">
<CheckBoxPreference
android:title="CheckBox Preference"
android:defaultValue="false"
android:summary="You may enter a boolean"
android:key="checkbox" />
<RingtonePreference
android:title="Ringtone Preference"
android:summary="You may pick a ringtone"
android:defaultValue=""
android:key="ringtone" />
</PreferenceCategory>
<PreferenceCategory android:title="Category Two">
<ListPreference
android:title="List Preference"
android:summary="You may chose from multiple choices"
android:key="list"
android:entries="@array/listNames"
android:entryValues="@array/listValues"
/>
</PreferenceCategory>
</PreferenceScreen>
platform/android/res/values/array/array.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="listNames">
<item>5 Minutes</item>
<item>10 Minutes</item>
<item>15 Minutes</item>
<item>30 Minutes</item>
<item>60 Minutes</item>
</string-array>
<string-array name="listValues">
<item>5</item>
<item>10</item>
<item>15</item>
<item>30</item>
<item>60</item>
</string-array>
</resources>
Properties 104
Inherited from Titanium.Proxy
The name of the API that this proxy corresponds to.
Inherited from Titanium.Proxy
Indicates if the proxy will bubble an event to its parent.
Default: true
Flag allowing window to extend into the status bar and navigation bar.
When assigned to Window.windowFlags, this flag will make the window ignore the system's insets such as the top status bar and bottom navigation bar so that they overlap the window. The system may make the status bar and navigation bar completely transparent, but this behavior is not guaranteed to happen.
When using this flag, it's also recommended to set the
Window.extendSafeArea property to true.
Warning: Using this flag causes Window.safeAreaPadding
to return all zeros. This flag also breaks keyboard adjustPan support.
Window flag which makes the Android system's navigation bar semi-transparent.
When assigned to Titanium.UI.Window.windowFlags, this flag will make the Android
system's bottom navigation bar semi-transparent. This flag will only work if you also set the
Window.extendSafeArea property to true.
This flag is only supported by Android 4.4 and newer OS versions. This flag is ignored on older versions. On Android 4.4, navigation bar can only be translucent in portrait mode while newer OS versions support this flag for all orientations.
Window flag which makes the Android system's top status bar semi-transparent.
When assigned to Titanium.UI.Window.windowFlags, this flag will make the Android
system's top status bar semi-transparent. This flag will only work if you also set the
Titanium.UI.Window.extendSafeArea property to true.
This flag is only supported by Android 4.4 and newer OS versions. This flag is ignored on older versions.
Raw bit controlling whether the right/bottom edge is clipped to its container, based on the gravity direction being applied.
Raw bit controlling how the right/bottom edge is placed.
Raw bit controlling how the left/top edge is placed.
Raw bit indicating the gravity for an axis has been specified.
Bits defining the horizontal axis.
Bits defining the vertical axis.
Push object to the bottom of its container, not changing its size.
Place the object in the center of its container in both the vertical and horizontal axis, not changing its size.
Place object in the horizontal center of its container, not changing its size.
Place object in the vertical center of its container, not changing its size.
Flag to clip the edges of the object to its container along the horizontal axis.
Flag to clip the edges of the object to its container along the vertical axis.
Special constant to enable clipping to an overall display along the horizontal dimension.
Special constant to enable clipping to an overall display along the vertical dimension.
Push object to x-axis position at the end of its container, not changing its size.
Grow the horizontal and vertical size of the object if needed so it completely fills its container.
Grow the horizontal size of the object if needed so it completely fills its container.
Grow the vertical size of the object if needed so it completely fills its container.
Binary mask to get the absolute horizontal gravity of a gravity.
Push object to the left of its container, not changing its size.
Constant indicating that no gravity has been set
Binary mask for the horizontal gravity and script specific direction bit.
Raw bit controlling whether the layout direction is relative or not (GRAVITY_START/GRAVITY_END instead of absolute GRAVITY_LEFT/GRAVITY_RIGHT).
Push object to the right of its container, not changing its size.
Push object to x-axis position at the start of its container, not changing its size.
Push object to the top of its container, not changing its size.
Binary mask to get the vertical gravity of a gravity.
Inherited from Titanium.Proxy
The Window or TabGroup whose Activity lifecycle should be triggered on the proxy.
Always allow a user to over-scroll this view, provided it is a view that can scroll.
Use this with the following properties - Titanium.UI.ScrollableView.overScrollMode, Titanium.UI.ScrollView.overScrollMode, Titanium.UI.TableView.overScrollMode and Titanium.UI.WebView.overScrollMode.
Only applicable when Titanium.Platform.Android.API_LEVEL is 9 or above.
Allow a user to over-scroll this view only if the content is large enough to meaningfully scroll, provided it is a view that can scroll.
Use this with the following properties - Titanium.UI.ScrollableView.overScrollMode, Titanium.UI.ScrollView.overScrollMode, Titanium.UI.TableView.overScrollMode and Titanium.UI.WebView.overScrollMode.
Only applicable when Titanium.Platform.Android.API_LEVEL is 9 or above.
Never allow a user to over-scroll this view.
Use this with the following properties - Titanium.UI.ScrollableView.overScrollMode, Titanium.UI.ScrollView.overScrollMode, Titanium.UI.TableView.overScrollMode and Titanium.UI.WebView.overScrollMode.
Only applicable when Titanium.Platform.Android.API_LEVEL is 9 or above.
Android A_8 pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Android L_8 pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Android LA_88 pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Android OPAQUE pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Android RGB_332 pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Android RGB_565 pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Android RGB_888 pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Android RGBA_4444 pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Android RGBA_5551 pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Android RGBA_8888 pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Android RGBX_8888 pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Android TRANSLUCENT pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Android A_8 pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Android UNKNOWN pixel format for Titanium.UI.Window. Selecting the correct pixel format can improve image clarity and performance.
See the Android Developer website for official documentation about the PixelFormat constants.
Used with the Titanium.UI.Android.ProgressIndicator.type property to indicate an ongoing activity of determinate length.
Display Titanium.UI.Android.ProgressIndicator as a modal dialog. (default)
Used with the Titanium.UI.Android.ProgressIndicator.location property.
Used with the Titanium.UI.Android.ProgressIndicator.type property to indicate an ongoing activity of indeterminate length. (default)
Display Titanium.UI.Android.ProgressIndicator as a horizontal progress bar in the title of the window.
Used with the Titanium.UI.Android.ProgressIndicator.location property.
When entering (scrolling on screen) the view will scroll on any downwards scroll event, regardless of whether the scrolling view is also scrolling. This is commonly referred to as the 'quick return' pattern.
An additional flag for 'enterAlways' which modifies the returning view to only initially scroll back to it's collapsed height. Once the scrolling view has reached the end of it's scroll range, the remainder of this view will be scrolled into view. The collapsed height is defined by the view's minimum height.
When exiting (scrolling off screen) the view will be scrolled until it is 'collapsed'. The collapsed height is defined by the view's minimum height.
Disable scrolling on the view. This flag should not be combined with any of the other scroll flags.
The view will be scroll in direct relation to scroll events. This flag needs to be set for any of the other flags to take effect. If any sibling views before this one do not have this flag, then this value has no effect.
Upon a scroll ending, if the view is only partially visible then it will be snapped and scrolled to its closest edge. For example, if the view only has its bottom 25% displayed, it will be scrolled off screen completely. Conversely, if its bottom 75% is visible then it will be scrolled fully into view.
An additional flag to be used with 'snap'. If set, the view will be snapped to its top and bottom margins, as opposed to the edges of the view itself.
The window will not be resized, and it will not be panned to make its focus visible.
Used with the Titanium.UI.Window.windowSoftInputMode property.
Pan the current heavyweight window when the input method (ie software keyboard) is shown, to ensure that its contents are not obscured.
Used with the Titanium.UI.Window.windowSoftInputMode property.
One of the group of soft input adjustment constants, SOFT_INPUT_ADJUST_UNSPECIFIED, SOFT_INPUT_ADJUST_RESIZE, and SOFT_INPUT_ADJUST_PAN.
Resize the current heavyweight window when the input method (ie software keyboard) is shown, to ensure that its contents are not obscured.
Used with the Titanium.UI.Window.windowSoftInputMode property.
One of the group of soft input adjustment constants, SOFT_INPUT_ADJUST_UNSPECIFIED, SOFT_INPUT_ADJUST_RESIZE, and SOFT_INPUT_ADJUST_PAN.
Use the system-default behavior to determine how the soft input area (ie software keyboard) is accomodated by the current heavyweight window when it receives focus (default.)
Depends on the AndroidManifest.xml setting if defined or system-default otherwise to
determine how to accomodate the soft keyboard when visible.
Used with the Titanium.UI.Window.windowSoftInputMode property.
One of the group of soft input adjustment constants, SOFT_INPUT_ADJUST_UNSPECIFIED, SOFT_INPUT_ADJUST_RESIZE, and SOFT_INPUT_ADJUST_PAN.
Always hide the soft input area (ie software keyboard) when the current heavyweight window receives focus.
Note that the unresolved bug #7115 on the Official Android Project website affects this functionality.
Used with the Titanium.UI.Window.windowSoftInputMode property.
One of the group of soft input visibility constants, SOFT_INPUT_STATE_ALWAYS_HIDDEN, SOFT_INPUT_STATE_ALWAYS_VISIBLE, SOFT_INPUT_STATE_HIDDEN, SOFT_INPUT_STATE_UNSPECIFIED, and SOFT_INPUT_STATE_VISIBLE.
Always show the soft input area (ie software keyboard) when the current heavyweight window receives focus.
Used with the Titanium.UI.Window.windowSoftInputMode property.
This constant is one of the group of soft input visibility constants, SOFT_INPUT_STATE_ALWAYS_HIDDEN, SOFT_INPUT_STATE_ALWAYS_VISIBLE, SOFT_INPUT_STATE_HIDDEN, SOFT_INPUT_STATE_UNSPECIFIED, and SOFT_INPUT_STATE_VISIBLE.
Attempt to hide the soft input area (ie software keyboard) when the current heavyweight window receives focus.
Used with the Titanium.UI.Window.windowSoftInputMode property.
This constant is one of the group of soft input visibility constants, SOFT_INPUT_STATE_ALWAYS_HIDDEN, SOFT_INPUT_STATE_ALWAYS_VISIBLE, SOFT_INPUT_STATE_HIDDEN, SOFT_INPUT_STATE_UNSPECIFIED, and SOFT_INPUT_STATE_VISIBLE.
Use the system-default behavior to determine whether to show the soft input area (ie software keyboard) when the current heavyweight window receives focus.
Used with the Titanium.UI.Window.windowSoftInputMode property.
This constant is one of the group of soft input visibility constants, SOFT_INPUT_STATE_ALWAYS_HIDDEN, SOFT_INPUT_STATE_ALWAYS_VISIBLE, SOFT_INPUT_STATE_HIDDEN, SOFT_INPUT_STATE_UNSPECIFIED, and SOFT_INPUT_STATE_VISIBLE.
Attempt to show the soft input area (ie software keyboard) when the current heavyweight window receives focus.
Used with the Titanium.UI.Window.windowSoftInputMode property.
This constant is one of the group of soft input visibility constants, SOFT_INPUT_STATE_ALWAYS_HIDDEN, SOFT_INPUT_STATE_ALWAYS_VISIBLE, SOFT_INPUT_STATE_HIDDEN, SOFT_INPUT_STATE_UNSPECIFIED, and SOFT_INPUT_STATE_VISIBLE.
Use Android default behavior to handle keyboard visibility when a view receives focus. (default)
Attempt to hide the soft keyboard when a view receives focus. Note: system can override request.
Attempt to show the soft keyboard when a view receives focus. Note: system can override request.
Sets the color of the status bar to light mode. Needs Android API level 23.
Deprecated since 10.0.0
Use <Titanium.UI.SWITCH_STYLE_CHECKBOX> instead.
Display a checkbox.
Use with the Titanium.UI.Switch.style property.
Deprecated since 10.0.0
Use <Titanium.UI.SWITCH_STYLE_SLIDER> instead.
Display a switch.
Use with the Titanium.UI.Switch.style property.
Deprecated since 10.0.0
Use <Titanium.UI.SWITCH_STYLE_TOGGLE_BUTTON> instead.
Display a toggle button.
Use with the Titanium.UI.Switch.style property.
Set the TabGroup tab mode to fixed (default).
Set the TabGroup tab mode to scrollable.
TabGroup style taking advantage of a bottom navigation controller for switching between tabs.
The default TabGroup style that places the Tabs bellow the ActionBar and above the Window content.
Captures layout bounds of target views before and after the scene change and animates those changes during the transition.
Use this only for shared element transition. Refers to ChangeBounds transition.
Captures the clip bounds before and after the scene change and animates those changes during the transition.
Use this only for shared element transition. Refers to ChangeClipBounds transition.
Captures an ImageView's matrix before and after the scene change and animates it during the transition.
Use this only for shared element transition. Refers to ChangeImageTransform transition.
Captures scale and rotation for Views before and after the scene change and animates those changes during the transition.
Use this only for shared element transition. Refers to ChangeTransform transition.
Moves views in or out from the edges of the scene.
Use this only for activity transition. Refers to Explode transition.
Fades in the views.
Use this only for activity transition. Refers to Fade transition.
Fades out the views.
Use this only for activity transition. Refers to Fade transition.
Resets transition to platform default.
Can be used with activity and shared element transtion.
Moves views to bottom.
Use this only for activity transition. Refers to Slide transition.
Moves views to left.
Use this only for activity transition. Refers to Slide transition.
Moves views to right.
Use this only for activity transition. Refers to Slide transition.
Moves views to top.
Use this only for activity transition. Refers to Slide transition.
Use with WebView.cacheMode to override how the cache is used in a web view.
Use cached resources when they're available, even when they're expired. Otherwise load resources via network.
Use with WebView.cacheMode to override how the cache is used in a web view.
Don't use network, load from the cache only.
Use with WebView.cacheMode to override how the cache is used in a web view.
This is the default cache usage mode.
Use with WebView.cacheMode to override how the cache is used in a web view.
Don't use cache, load from the network.
Use with WebView.pluginState to disable plugins in a web view.
Content that requires a plugin, is not loaded, and any alternative content is displayed instead.
Use with WebView.pluginState to enable plugins in a web view.
Content that requires a plugin,, is always loaded, whether or not a plugin is available for the content.
Display a placeholder and only load plugins when user selects it.
Content that requires a plugin, is replaced by a placeholder. When the user clicks on the placeholder, the plugin is loaded and the content is displayed.
Use with WebView.pluginState to load plugins on demand.
Show horizontal and vertical scrollbar in a Ti.UI.WebView.
Hide all scrollbars in a Ti.UI.WebView.
Hide horizontal scrollbar in a Ti.UI.WebView.
Hide vertical scrollbar in a Ti.UI.WebView.
Methods 16
Inherited from Titanium.Proxy
Adds the specified callback as an event listener for the named event.
| Parameters | Type | Description |
|---|---|---|
| name | String | Name of the event. |
| callback | Callback<Titanium.Event> | Callback function to invoke when the event is fired. 4 fields
|
applyProperties
since 3.0.0Inherited from Titanium.Proxy
Applies the properties to the proxy.
| Parameters | Type | Description |
|---|---|---|
| props | Dictionary | A dictionary of properties to apply. |
createCardView
since 5.1.0Creates and returns an instance of Titanium.UI.Android.CardView.
| Parameters | Type | Description |
|---|---|---|
| parameters? | Dictionary<Titanium.UI.Android.CardView> | Properties to set on a new object, including any defined by Titanium.UI.Android.CardView except those marked not-creation or read-only. |
createCollapseToolbar
since 12.1.0Creates and returns an instance of Titanium.UI.Android.CollapseToolbar.
| Parameters | Type | Description |
|---|---|---|
| parameters? | Dictionary<Titanium.UI.Android.CollapseToolbar> | Properties to set on a new object, including any defined by Titanium.UI.Android.CollapseToolbar except those marked not-creation or read-only. |
createDrawerLayout
since 6.2.0Creates and returns an instance of Titanium.UI.Android.DrawerLayout.
| Parameters | Type | Description |
|---|---|---|
| parameters? | Dictionary<Titanium.UI.Android.DrawerLayout> | Properties to set on a new object, including any defined by Titanium.UI.Android.DrawerLayout except those marked not-creation or read-only. |
createFloatingActionButton
since 12.0.0Creates and returns an instance of Titanium.UI.Android.FloatingActionButton.
| Parameters | Type | Description |
|---|---|---|
| parameters? | Dictionary<Titanium.UI.Android.FloatingActionButton> | Properties to set on a new object, including any defined by Titanium.UI.Android.FloatingActionButton except those marked not-creation or read-only. |
createProgressIndicator
since 3.0.0Creates and returns an instance of Titanium.UI.Android.ProgressIndicator.
| Parameters | Type | Description |
|---|---|---|
| parameters? | Dictionary<Titanium.UI.Android.ProgressIndicator> | Properties to set on a new object, including any defined by Titanium.UI.Android.ProgressIndicator except those marked not-creation or read-only. |
createSearchView
since 3.0.2Creates and returns an instance of Titanium.UI.Android.SearchView.
| Parameters | Type | Description |
|---|---|---|
| parameters? | Dictionary<Titanium.UI.Android.SearchView> | Properties to set on a new object, including any defined by Titanium.UI.Android.SearchView except those marked not-creation or read-only. |
createSnackbar
since 11.1.0Creates and returns an instance of Titanium.UI.Android.Snackbar.
| Parameters | Type | Description |
|---|---|---|
| parameters? | Dictionary<Titanium.UI.Android.Snackbar> | Properties to set on a new object, including any defined by Titanium.UI.Android.Snackbar except those marked not-creation or read-only. |
Inherited from Titanium.Proxy
Fires a synthesized event to any registered listeners.
| Parameters | Type | Description |
|---|---|---|
| name | String | Name of the event. |
| event? | Dictionary | A dictionary of keys and values to add to the Titanium.Event object sent to the listeners. |
getColorResource
since 9.1.0Returns a <Ti.Color> instance for a color defined by the system or user resources (colors.xml)
This method allows converting a known color resource id or short name to an actual color instance.
The resource id values can be accessed via Titanium.Android.R.color and <Titanium.App.Android.R.color> properties.
See the official Android Developer documentation for the R.color constants.
| Parameters | Type | Description |
|---|---|---|
| resourceIdOrColorName | Number | String | integer resource id for a color, or the name of the color defined in the application resources (colors.xml). |
harmonizedColor
since 12.0.0Creates a harmonizing color
Shifts the hue of the input color towards the hue of colorPrimary and returns a new color
as a hex string. Usage: Ti.UI.Android.harmonizedColor("#ff0000");
| Parameters | Type | Description |
|---|---|---|
| color | String | Titanium.UI.Color | Input Color |
Hides the soft keyboard.
Be aware that it is not currently possible in the native Android API to detect that the keyboard is already visible or to globally show the keyboard.
moveToBackground
since 12.4.0Moves the app to the background
Opens an application preferences dialog, using the native Android system settings interface,
defined by the platform-specific preferences.xml and array.xml files.
The preferences configuration files must be created in the project folders,
platform/android/res/xml/preferences.xml and platform/android/res/values/array/array.xml.
The preferences values can be accessed via Titanium.App.Properties.
See the example for a demonstration, and the official Android Developer documentation for the preferences.xml format.
Inherited from Titanium.Proxy
Removes the specified callback as an event listener for the named event.
| Parameters | Type | Description |
|---|---|---|
| name | String | Name of the event. |
| callback | Callback<Titanium.Event> | Callback function to remove. Must be the same function passed to 4 fields
|