public interface

TintableBackgroundView

 androidx.core.view.TintableBackgroundView

Subclasses:

EmojiAppCompatTextView, EmojiAppCompatButton, EmojiAppCompatEditText, ActionMenuItemView, AppCompatTextView, AppCompatCheckBox, SearchView.SearchAutoComplete, AppCompatCheckedTextView, AppCompatImageView, AppCompatToggleButton, AppCompatButton, AppCompatSpinner, AppCompatImageButton, AppCompatEditText, AppCompatRadioButton, AppCompatMultiAutoCompleteTextView, AppCompatAutoCompleteTextView, DialogTitle, ImageFilterButton, MotionButton, ImageFilterView

Gradle dependencies

compile group: 'androidx.core', name: 'core', version: '1.9.0-alpha04'

  • groupId: androidx.core
  • artifactId: core
  • version: 1.9.0-alpha04

Artifact androidx.core:core:1.9.0-alpha04 it located at Google repository (https://maven.google.com/)

Androidx artifact mapping:

androidx.core:core com.android.support:support-compat

Androidx class mapping:

androidx.core.view.TintableBackgroundView android.support.v4.view.TintableBackgroundView

Overview

Interface which allows a android.view.View to receive background tinting calls from ViewCompat when running on API v20 devices or lower.

Summary

Methods
public ColorStateListgetSupportBackgroundTintList()

Return the tint applied to the background drawable, if specified.

public PorterDuff.ModegetSupportBackgroundTintMode()

Return the blending mode used to apply the tint to the background drawable, if specified.

public voidsetSupportBackgroundTintList(ColorStateList tint)

Applies a tint to the background drawable.

public voidsetSupportBackgroundTintMode(PorterDuff.Mode tintMode)

Specifies the blending mode used to apply the tint specified by TintableBackgroundView.setSupportBackgroundTintList(ColorStateList)} to the background drawable.

Methods

public void setSupportBackgroundTintList(ColorStateList tint)

Applies a tint to the background drawable. Does not modify the current tint mode, which is by default.

Subsequent calls to View.setBackground(Drawable) will automatically mutate the drawable and apply the specified tint and tint mode.

Parameters:

tint: the tint to apply, may be null to clear tint

See also: TintableBackgroundView.getSupportBackgroundTintList()

public ColorStateList getSupportBackgroundTintList()

Return the tint applied to the background drawable, if specified.

Returns:

the tint applied to the background drawable

public void setSupportBackgroundTintMode(PorterDuff.Mode tintMode)

Specifies the blending mode used to apply the tint specified by TintableBackgroundView.setSupportBackgroundTintList(ColorStateList)} to the background drawable. The default mode is .

Parameters:

tintMode: the blending mode used to apply the tint, may be null to clear tint

See also: TintableBackgroundView.getSupportBackgroundTintMode()

public PorterDuff.Mode getSupportBackgroundTintMode()

Return the blending mode used to apply the tint to the background drawable, if specified.

Returns:

the blending mode used to apply the tint to the background drawable

Source

/*
 * Copyright 2018 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package androidx.core.view;

import android.content.res.ColorStateList;
import android.graphics.PorterDuff;

import androidx.annotation.Nullable;

/**
 * Interface which allows a {@link android.view.View} to receive background tinting calls from
 * {@link ViewCompat} when running on API v20 devices or lower.
 */
/*
 * When used with androidx.resourceinspection.annotation.AppCompatShadowedAttributes, this
 * interface implies that AppCompat shadows the platform's background tint attributes.
 * See androidx.resourceinspection.processor for more details and a full mapping of attributes.
 */
public interface TintableBackgroundView {

    /**
     * Applies a tint to the background drawable. Does not modify the current tint
     * mode, which is {@link PorterDuff.Mode#SRC_IN} by default.
     * <p>
     * Subsequent calls to {@code View.setBackground(Drawable)} will automatically
     * mutate the drawable and apply the specified tint and tint mode.
     *
     * @param tint the tint to apply, may be {@code null} to clear tint
     *
     * @see #getSupportBackgroundTintList()
     */
    void setSupportBackgroundTintList(@Nullable ColorStateList tint);

    /**
     * Return the tint applied to the background drawable, if specified.
     *
     * @return the tint applied to the background drawable
     */
    @Nullable
    ColorStateList getSupportBackgroundTintList();

    /**
     * Specifies the blending mode used to apply the tint specified by
     * {@link #setSupportBackgroundTintList(ColorStateList)}} to the background
     * drawable. The default mode is {@link PorterDuff.Mode#SRC_IN}.
     *
     * @param tintMode the blending mode used to apply the tint, may be
     *                 {@code null} to clear tint
     * @see #getSupportBackgroundTintMode()
     */
    void setSupportBackgroundTintMode(@Nullable PorterDuff.Mode tintMode);

    /**
     * Return the blending mode used to apply the tint to the background
     * drawable, if specified.
     *
     * @return the blending mode used to apply the tint to the background
     *         drawable
     */
    @Nullable
    PorterDuff.Mode getSupportBackgroundTintMode();
}