Most visited

Recently visited

BackgroundManager

public final class BackgroundManager
extends Object

java.lang.Object
   ↳ android.support.v17.leanback.app.BackgroundManager


支持多个活动之间的背景图像连续性。

一个Activity应该将一个BackgroundManager和attach(Window)实例化到Activity的窗口。 当活动开始时,背景被初始化为存储在连续性服务中的当前背景值。 后台连续性服务随着背景更新而更新。

在某些时候,例如停止时,活动可能会释放其背景状态。

当活动恢复时,如果BackgroundManager尚未释放,则连续性服务将从BackgroundManager状态更新。 如果BackgroundManager被释放,BackgroundManager继承了连续性服务的当前状态。

当最后一个Activity被销毁时,后台状态被重置。

背景由几层组成,从后到前:

BackgroundManager保存对可能大的位图Drawables的引用。 当活动不可见时,请致电release()以释放这些引用。

Summary

Public methods

void attach(Window window)

使背景在给定窗口中可见。

final int getColor()

返回当前背景颜色。

Drawable getDefaultDimLayer()

返回用作昏暗图层的默认drawable。

Drawable getDimLayer()

返回用作昏暗图层的绘图。

Drawable getDrawable()

返回当前背景 Drawable

static BackgroundManager getInstance(Activity activity)

返回与给定Activity关联的BackgroundManager。

boolean isAttached()

如果后台管理器当前已连接,则返回true; 否则为假。

void release()

释放对Drawable的引用。

void setBitmap(Bitmap bitmap)

将给定的位图设置为背景。

void setColor(int color)

将背景设置为给定的颜色。

void setDimLayer(Drawable drawable)

设置用作昏暗图层的绘图。

void setDrawable(Drawable drawable)

将给定的drawable设置为背景。

void setThemeDrawableResourceId(int resourceId)

设置当没有背景设置时显示drawable的资源ID。

Inherited methods

From class java.lang.Object

Public methods

attach

void attach (Window window)

使背景在给定窗口中可见。 背景设置后,必须连接后台管理器。

Parameters
window Window

getColor

int getColor ()

返回当前背景颜色。

Returns
int

getDefaultDimLayer

Drawable getDefaultDimLayer ()

返回用作昏暗图层的默认drawable。

Returns
Drawable

getDimLayer

Drawable getDimLayer ()

返回用作昏暗图层的绘图。

Returns
Drawable

getDrawable

Drawable getDrawable ()

返回当前背景 Drawable

Returns
Drawable

getInstance

BackgroundManager getInstance (Activity activity)

返回与给定Activity关联的BackgroundManager。

BackgroundManager将为每个单独的活动按需创建。 随后的调用将返回为此Activity创建的同一个BackgroundManager。

Parameters
activity Activity
Returns
BackgroundManager

isAttached

boolean isAttached ()

如果后台管理器当前已连接,则返回true; 否则为假。

Returns
boolean

release

void release ()

释放对Drawable的引用。 通常被称为在不可见时减少内存开销。

当活动启动时,如果BackgroundManager尚未释放,则连续性服务将从BackgroundManager状态更新。 如果BackgroundManager被释放,BackgroundManager继承了连续性服务的当前状态。

setBitmap

void setBitmap (Bitmap bitmap)

将给定的位图设置为背景。 当使用setBitmap设置背景时,提供的位图将被缩放并裁剪以正确地适合视图的尺寸。 在应用程序中变得可见的时间是不确定的,并且可能会在稍微延迟后发生。

Parameters
bitmap Bitmap

setColor

void setColor (int color)

将背景设置为给定的颜色。 在应用程序中变得可见的时间是不确定的,并且可能会在稍微延迟后发生。

Parameters
color int

setDimLayer

void setDimLayer (Drawable drawable)

设置用作昏暗图层的绘图。

Parameters
drawable Drawable

setDrawable

void setDrawable (Drawable drawable)

将给定的drawable设置为背景。 所提供的Drawable将作为背景未经修改地使用,而不对其应用任何缩放或裁剪。 在应用程序中变得可见的时间是不确定的,并且可能会在稍微延迟后发生。

Parameters
drawable Drawable

setThemeDrawableResourceId

void setThemeDrawableResourceId (int resourceId)

设置当没有背景设置时显示drawable的资源ID。 覆盖从主题绘制的窗口背景。 这应该在附加之前调用。

Parameters
resourceId int

Hooray!