Skip to content
Titanium SDK
Version12.8.0

You are reading 12.8.0. See this page in 13.4.1.

Titanium.Android.RemoteViews

proxyAndroidsince 1.6

Extends Titanium.Proxy

The Titanium binding of Android RemoteViews.

RemoteViews is an API for referencing and updating a remote view hierarchy that lives in another process, for example, in a Notification.

To create a remote view hierarchy, you must define an Android XML layout for the views you want to display, and place the XML file in the platform/android/res/layout inside your project folder. See the examples for a sample XML layout and sample code for creating a remote view.

To use a remote view hierarchy in a notification, see Notification.contentView.

Because the remote view hierarchy belongs to another process, you cannot call methods on it directly, but you can call methods on the RemoteViews object to update views in the heirarchy by ID. To reference a view inside the layout, use the Titanium.App.Android.R object to reference the view's ID. For example, if you have a view with the ID notify_imageview, you can refer to it using:

Ti.App.Android.R.id.notify_imageview

See also:

Examples

Create a Remote View

The following code excerpt creates a RemoteViews object based on a custom layout called custom_layout.xml, and set a label's text.

var AppR = Ti.App.Android.R;
var customLayout = Ti.Android.createRemoteViews({ layoutId: AppR.layout.custom_layout });
customLayout.setTextViewText(AppR.id.custom_text, "Click Me!");

This example uses a simple custom layout:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:orientation="vertical" >
    <TextView android:id="@+id/custom_text"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:background="#ffffff"
            android:textColor="#aaff0000"
            android:textStyle="italic"
            android:gravity="center"
            android:text="Hello, I am a TextView" />
</LinearLayout>

The layout file for this example must be placed in platform/android/res/layout/custom_layout.xml.

Properties 5

apiName

Stringsince Android 3.2.0, iPhone 3.2.0, iPad 3.2.0, macOS 9.2.0read-only

Inherited from Titanium.Proxy

The name of the API that this proxy corresponds to.

bubbleParent

Booleansince Android 3.0.0, iPhone 3.0.0, iPad 3.0.0, macOS 9.2.0

Inherited from Titanium.Proxy

Indicates if the proxy will bubble an event to its parent.

Default: true

layoutId

Number

Android layout resource ID for the view to display. Required.

To define a custom layout resource in your application, the XML layout file should be placed in platform/android/res/layout folder inside your project folder.

Use Titanium.App.Android.R to reference the ID of the layout.

Package name that the resource ID lives in. Optional.

Methods 17

Inherited from Titanium.Proxy

Adds the specified callback as an event listener for the named event.

Parameters
ParametersTypeDescription
nameString

Name of the event.

callbackCallback<Titanium.Event>

Callback function to invoke when the event is fired.

4 fields
bubbles Boolean

True if the event will try to bubble up if possible.

cancelBubble Boolean

Set to true to stop the event from bubbling.

source Object

Source object that fired the event.

type String

Name of the event fired.

Inherited from Titanium.Proxy

Fires a synthesized event to any registered listeners.

Parameters
ParametersTypeDescription
nameString

Name of the event.

event?Dictionary

A dictionary of keys and values to add to the Titanium.Event object sent to the listeners.

Inherited from Titanium.Proxy

Removes the specified callback as an event listener for the named event.

Parameters
ParametersTypeDescription
nameString

Name of the event.

callbackCallback<Titanium.Event>

Callback function to remove. Must be the same function passed to addEventListener.

4 fields
bubbles Boolean

True if the event will try to bubble up if possible.

cancelBubble Boolean

Set to true to stop the event from bubbling.

source Object

Source object that fired the event.

type String

Name of the event fired.

Calls a method taking a single boolean argument on a view in the remote view hierarchy. See Android's documentation for [setBoolean](https://developer.android.com/reference/android/widget/RemoteViews.html#setBoolean(int, java.lang.String, boolean)).

Parameters
ParametersTypeDescription
viewIdNumber

Resource ID of the view to invoke the method on. Application-specific resource IDs can be specified using Titanium.App.Android.R.

methodNameString

Name of the method to call.

valueBoolean

Value to pass to the method.

Sets the base time, format string, and started flag for a chronometer in the remote view hierarchy.

See Android's documentation for [setChronometer](https://developer.android.com/reference/android/widget/RemoteViews.html#setChronometer(int, long, java.lang.String, boolean)).

Parameters
ParametersTypeDescription
viewIdNumber

Resource ID of the Chronometer to update. Application-specific resource IDs can be specified using Titanium.App.Android.R.

baseDate

Time at which the timer would have read 0:00.

formatString

Chronometer format string, or null to simply display the timer value.

startedBoolean

True if you want the clock to be started, false if not.

Calls a method taking a single double argument on a view in the remote view hierarchy.

See Android's documentation for [setDouble](https://developer.android.com/reference/android/widget/RemoteViews.html#setDouble(int, java.lang.String, double)).

Parameters
ParametersTypeDescription
viewIdNumber

Resource ID of the view to update. Application-specific resource IDs can be specified using Titanium.App.Android.R.

methodNameString

Name of the method to call.

valueNumber

Value to pass to the method.

Sets the image for an image view in the remote view hierarchy using an Android drawable resource.

See Android's documentation for [setImageViewResource](https://developer.android.com/reference/android/widget/RemoteViews.html#setImageViewResource(int, int)).

Parameters
ParametersTypeDescription
viewIdNumber

Resource ID of the ImageView to update. Application-specific resource IDs can be specified using Titanium.App.Android.R.

srcIdNumber

Resource ID of the new image. Application-specific resource IDs can be specified using Titanium.App.Android.R.

Sets the image for an image view in the remote view hierarchy using a URI.

This method supports supports both Android and Titanium URLs.

See Android's documentation for [setImageViewUri](https://developer.android.com/reference/android/widget/RemoteViews.html#setImageViewUri(int, android.net.Uri)).

Parameters
ParametersTypeDescription
viewIdNumber

Resource ID of the ImageView to update. Application-specific resource IDs can be specified using Titanium.App.Android.R.

uriString

URI of the image (both Android and Titanium URLs are supported).

Calls a method taking a single int argument on a view in the remote view hierarchy.

See Android's documentation for [setInt](https://developer.android.com/reference/android/widget/RemoteViews.html#setInt(int, java.lang.String, int))

Parameters
ParametersTypeDescription
viewIdNumber

Resource ID of the view to update. Application-specific resource IDs can be specified using Titanium.App.Android.R.

methodNameString

Name of the method to call.

valueNumber

Value to pass to the method.

Launches a Titanium.Android.PendingIntent when the specified view is clicked.

See Android's documentation for [setOnClickPendingIntent](https://developer.android.com/reference/android/widget/RemoteViews.html#setOnClickPendingIntent(int, android.app.PendingIntent)).

Parameters
ParametersTypeDescription
viewIdNumber

Resource ID of the view to add a click listener to. Application-specific resource IDs can be specified using Titanium.App.Android.R.

pendingIntentTitanium.Android.PendingIntent

The PendingIntent to execute when this view is clicked.

Sets the progress, max value, and indeterminate flag of a progress bar in the remote view hierarchy.

See Android's documentation for [setProgressBar](https://developer.android.com/reference/android/widget/RemoteViews.html#setProgressBar(int, int, int, boolean)).

Parameters
ParametersTypeDescription
viewIdNumber

Resource ID of the progress bar to update. Application-specific resource IDs can be specified using Titanium.App.Android.R.

maxNumber

The new maximum value of the progress bar.

progressNumber

The new progress value of the progress bar (from 0..max).

indeterminateBoolean

Determines whether the progress bar is indeterminate. If true, the progress bar displays an infinite looping animation.

Calls a method taking a single String argument on a view in the remote view hierarchy.

See Android's documentation for [setString](https://developer.android.com/reference/android/widget/RemoteViews.html#setString(int, java.lang.String, java.lang.String)).

Parameters
ParametersTypeDescription
viewIdNumber

Resource ID of the view to update. Application-specific resource IDs can be specified using Titanium.App.Android.R.

methodNameString

Name of the method to call.

valueString

String to pass to the method.

Sets the text color of a view in the remote view hierarchy.

See Android's documentation for [setTextColor](https://developer.android.com/reference/android/widget/RemoteViews.html#setTextColor(int, int)).

Parameters
ParametersTypeDescription
viewIdNumber

Resource ID of the view to update. Application-specific resource IDs can be specified using Titanium.App.Android.R.

colorNumber

Color as an integer.

Sets the text of a text view in the remote view hierarchy.

See Android's documentation for [setTextViewText](https://developer.android.com/reference/android/widget/RemoteViews.html#setTextViewText(int, java.lang.CharSequence)).

Parameters
ParametersTypeDescription
viewIdNumber

Resource ID of the text view to update. Application-specific resource IDs can be specified using Titanium.App.Android.R.

textString

New text for the text view.

Calls a method taking one URI on a view in the remote view hierarchy.

See Android's documentation for [setUri](https://developer.android.com/reference/android/widget/RemoteViews.html#setUri(int, java.lang.String, android.net.Uri)).

Parameters
ParametersTypeDescription
viewIdNumber

Resource ID of the view to update. Application-specific resource IDs can be specified using Titanium.App.Android.R.

methodNameString

Name of the method to call.

valueString

URI (as a string) to pass to the method.

Sets the visibility of a view in the remote view hierarchy.

See Android's documentation for [setViewVisibility](https://developer.android.com/reference/android/widget/RemoteViews.html#setViewVisibility(int, int))

Parameters
ParametersTypeDescription
viewIdNumber

Resource ID of the view to show or hide. Application-specific resource IDs can be specified using Titanium.App.Android.R.

visibilityNumber

The visibility. Either 0 (VISIBLE), 4 (INVISIBLE) or 8 (GONE).