Google is committed to advancing racial equity for Black communities. See how.

Builder

class Builder
kotlin.Any
   ↳ androidx.browser.customtabs.CustomTabsIntent.Builder

Builder class for CustomTabsIntent objects.

Summary

Public constructors

Creates a CustomTabsIntent.Builder object associated with no CustomTabsSession.

<init>(@Nullable session: CustomTabsSession?)

Creates a CustomTabsIntent.Builder object associated with a given CustomTabsSession.

Public methods
CustomTabsIntent.Builder

Adds a default share item to the menu.

CustomTabsIntent.Builder
addMenuItem(@NonNull label: String, @NonNull pendingIntent: PendingIntent)

Adds a menu item.

CustomTabsIntent.Builder
addToolbarItem(id: Int, @NonNull icon: Bitmap, @NonNull description: String, @NonNull pendingIntent: PendingIntent)

Adds an action button to the custom tab.

CustomTabsIntent

Combines all the options that have been set and returns a new CustomTabsIntent object.

CustomTabsIntent.Builder

Enables the url bar to hide as the user scrolls down on the page.

CustomTabsIntent.Builder
setActionButton(@NonNull icon: Bitmap, @NonNull description: String, @NonNull pendingIntent: PendingIntent, shouldTint: Boolean)

Sets the action button that is displayed in the Toolbar.

CustomTabsIntent.Builder
setActionButton(@NonNull icon: Bitmap, @NonNull description: String, @NonNull pendingIntent: PendingIntent)

Sets the action button that is displayed in the Toolbar with default tinting behavior.

CustomTabsIntent.Builder
setCloseButtonIcon(@NonNull icon: Bitmap)

Sets the Close button icon for the custom tab.

CustomTabsIntent.Builder
setColorScheme(colorScheme: Int)

Sets the color scheme that should be applied to the user interface in the custom tab.

CustomTabsIntent.Builder
setColorSchemeParams(colorScheme: Int, @NonNull params: CustomTabColorSchemeParams)

Sets CustomTabColorSchemeParams for the given color scheme.

CustomTabsIntent.Builder

Sets the default CustomTabColorSchemeParams.

CustomTabsIntent.Builder

Set whether a default share item is added to the menu.

CustomTabsIntent.Builder
setExitAnimations(@NonNull context: Context, @AnimRes enterResId: Int, @AnimRes exitResId: Int)

Sets the exit animations.

CustomTabsIntent.Builder

Sets whether Instant Apps is enabled for this Custom Tab.

CustomTabsIntent.Builder
setNavigationBarColor(@ColorInt color: Int)

Sets the navigation bar color.

CustomTabsIntent.Builder

Sets the navigation bar divider color.

CustomTabsIntent.Builder
setSecondaryToolbarColor(@ColorInt color: Int)

Sets the color of the secondary toolbar.

CustomTabsIntent.Builder
setSecondaryToolbarViews(@NonNull remoteViews: RemoteViews, @Nullable clickableIDs: IntArray?, @Nullable pendingIntent: PendingIntent?)

Sets the remote views displayed in the secondary toolbar in a custom tab.

CustomTabsIntent.Builder
setSession(@NonNull session: CustomTabsSession)

Associates the Intent with the given CustomTabsSession.

CustomTabsIntent.Builder
setShareState(shareState: Int)

Sets the share state that should be applied to the custom tab.

CustomTabsIntent.Builder
setShowTitle(showTitle: Boolean)

Sets whether the title should be shown in the custom tab.

CustomTabsIntent.Builder
setStartAnimations(@NonNull context: Context, @AnimRes enterResId: Int, @AnimRes exitResId: Int)

Sets the start animations.

CustomTabsIntent.Builder
setToolbarColor(@ColorInt color: Int)

Sets the toolbar color.

CustomTabsIntent.Builder

Set whether the url bar should hide as the user scrolls down on the page.

Public constructors

<init>

Builder()

Creates a CustomTabsIntent.Builder object associated with no CustomTabsSession.

<init>

Builder(@Nullable session: CustomTabsSession?)

Creates a CustomTabsIntent.Builder object associated with a given CustomTabsSession. Guarantees that the Intent will be sent to the same component as the one the session is associated with.

Parameters
session CustomTabsSession?: The session to associate this Builder with.

Public methods

addDefaultShareMenuItem

@NonNull fun addDefaultShareMenuItem(): CustomTabsIntent.Builder

Deprecated: Use setShareState(int) instead. This will set the share state to CustomTabsIntent#SHARE_STATE_ON.

Adds a default share item to the menu.

addMenuItem

@NonNull fun addMenuItem(
    @NonNull label: String,
    @NonNull pendingIntent: PendingIntent
): CustomTabsIntent.Builder

Adds a menu item.

Parameters
label String: Menu label.
pendingIntent PendingIntent: Pending intent delivered when the menu item is clicked.

addToolbarItem

@NonNull fun addToolbarItem(
    id: Int,
    @NonNull icon: Bitmap,
    @NonNull description: String,
    @NonNull pendingIntent: PendingIntent
): CustomTabsIntent.Builder

Deprecated: Use CustomTabsIntent.Builder#setSecondaryToolbarViews(RemoteViews, int[], PendingIntent).

Adds an action button to the custom tab. Multiple buttons can be added via this method. If the given id equals TOOLBAR_ACTION_BUTTON_ID, the button will be placed on the toolbar; if the bitmap is too wide, it will be put to the bottom bar instead. If the id is not TOOLBAR_ACTION_BUTTON_ID, it will be directly put on secondary toolbar. The maximum number of allowed toolbar items in a single intent is CustomTabsIntent#getMaxToolbarItems(). Throws an IllegalStateException when that number is exceeded per intent.

Parameters
id Int: The unique id of the action button. This should be non-negative.
icon Bitmap: The icon.
description String: The description for the button. To be used for accessibility.
pendingIntent PendingIntent: The pending intent delivered when the button is clicked.

build

@NonNull fun build(): CustomTabsIntent

Combines all the options that have been set and returns a new CustomTabsIntent object.

enableUrlBarHiding

@NonNull fun enableUrlBarHiding(): CustomTabsIntent.Builder

Deprecated: Use setUrlBarHidingEnabled(boolean) instead.

Enables the url bar to hide as the user scrolls down on the page.

setActionButton

@NonNull fun setActionButton(
    @NonNull icon: Bitmap,
    @NonNull description: String,
    @NonNull pendingIntent: PendingIntent,
    shouldTint: Boolean
): CustomTabsIntent.Builder

Sets the action button that is displayed in the Toolbar.

This is equivalent to calling CustomTabsIntent.Builder#addToolbarItem(int, Bitmap, String, PendingIntent) with TOOLBAR_ACTION_BUTTON_ID as id.

Parameters
icon Bitmap: The icon.
description String: The description for the button. To be used for accessibility.
pendingIntent PendingIntent: pending intent delivered when the button is clicked.
shou