public class AppWidgetProviderInfo
extends Object
implements Parcelable
java.lang.Object | |
↳ | android.appwidget.AppWidgetProviderInfo |
介绍已安装的AppWidget提供程序的元数据。 此类中的字段对应于<appwidget-provider>
xml标签中的字段。
Constants |
|
---|---|
int |
RESIZE_BOTH Widget在水平和垂直轴上均可调整大小。 |
int |
RESIZE_HORIZONTAL Widget只能在水平轴上调整大小。 |
int |
RESIZE_NONE 小部件不可调整大小。 |
int |
RESIZE_VERTICAL Widget只能在垂直轴上调整大小。 |
int |
WIDGET_CATEGORY_HOME_SCREEN 表示小部件可以显示在主屏幕上。 |
int |
WIDGET_CATEGORY_KEYGUARD 表示小部件可以显示在键盘上。 |
int |
WIDGET_CATEGORY_SEARCHBOX 表示可以在为搜索框保留的空间内显示小部件。 |
Inherited constants |
---|
From interface android.os.Parcelable
|
Fields |
|
---|---|
public static final Creator<AppWidgetProviderInfo> |
CREATOR Parcelable.Creator实例化AppWidgetProviderInfo对象 |
public int |
autoAdvanceViewId AppWidget子视图的视图ID应该由控件的主机自动升级。 |
public ComponentName |
configure 要启动的活动将配置AppWidget。 |
public int |
icon 在AppWidget选择器中显示此AppWidget的图标。 |
public int |
initialKeyguardLayout 此AppWidget在键盘上显示时的初始布局的资源ID。 |
public int |
initialLayout 此AppWidget的初始布局的资源ID。 |
public String |
label 此字段在API级别21中已弃用。请使用 |
public int |
minHeight 添加到主机时,窗口小部件在dp中的默认高度。 |
public int |
minResizeHeight 小部件可以调整大小的最小高度(以dp为单位)。 |
public int |
minResizeWidth 窗口小部件可以调整大小的最小宽度(以dp为单位)。 |
public int |
minWidth 添加到主机时,窗口小部件在dp中的默认高度。 |
public int |
previewImage 预览AppWidget配置后的外观。 |
public ComponentName |
provider 此AppWidget组件的标识。 |
public int |
resizeMode 小部件可以调整大小的规则。 |
public int |
updatePeriodMillis 这个AppWidget想要更新的频率(以毫秒为单位)。 |
public int |
widgetCategory 确定是否可以在主屏幕,键盘保护程序或两者上显示此小组件。 |
Public constructors |
|
---|---|
AppWidgetProviderInfo() |
|
AppWidgetProviderInfo(Parcel in) 从包中解开AppWidgetProviderInfo。 |
Public methods |
|
---|---|
AppWidgetProviderInfo |
clone() 创建并返回此对象的副本。 |
int |
describeContents() 描述此Parcelable实例的封送表示中包含的特殊对象的种类。 |
final UserHandle |
getProfile() 获取提供者所在的用户配置文件。 |
final Drawable |
loadIcon(Context context, int density) 加载AppWidget选择器中显示的AppWidget图标。 |
final String |
loadLabel(PackageManager packageManager) 加载本地化标签以显示给AppWidget选取器中的用户。 |
final Drawable |
loadPreviewImage(Context context, int density) 加载AppWidget配置后的外观预览。 |
String |
toString() 返回对象的字符串表示形式。 |
void |
writeToParcel(Parcel out, int flags) 将此对象平铺到一个包裹中。 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
|
From interface android.os.Parcelable
|
int WIDGET_CATEGORY_HOME_SCREEN
表示小部件可以显示在主屏幕上。 这是默认值。
常数值:1(0x00000001)
int WIDGET_CATEGORY_KEYGUARD
表示小部件可以显示在键盘上。
常量值:2(0x00000002)
int WIDGET_CATEGORY_SEARCHBOX
表示可以在为搜索框保留的空间内显示小部件。
常量值:4(0x00000004)
Creator<AppWidgetProviderInfo> CREATOR
Parcelable.Creator实例化AppWidgetProviderInfo对象
int autoAdvanceViewId
AppWidget子视图的视图ID应该由控件的主机自动升级。
该字段对应于AppWidget元数据文件中的 android:autoAdvanceViewId
属性。
ComponentName configure
要启动的活动将配置AppWidget。
该字段的类名称对应于AppWidget元数据文件中的android:configure
属性。 包名称始终对应于包含AppWidget提供程序的包。
int icon
在AppWidget选择器中显示此AppWidget的图标。 如果未在xml中提供,则将使用应用程序图标。
该字段对应于AndroidManifest.xml文件中的 <receiver>
元素中的 android:icon
属性。
int initialKeyguardLayout
此AppWidget在键盘上显示时的初始布局的资源ID。 只有在小部件可以显示在键盘上时才需要提供此参数,请参阅widgetCategory
。
该字段对应于AppWidget元数据文件中的 android:initialKeyguardLayout
属性。
int initialLayout
此AppWidget的初始布局的资源ID。 这应该显示,直到AppWidget的RemoteViews可用。
该字段对应于AppWidget元数据文件中的 android:initialLayout
属性。
String label
此字段在API级别21中已被弃用。
使用loadLabel(android.content.pm.PackageManager)
。
要在AppWidget选取器中显示给用户的标签。
int minHeight
添加到主机时,窗口小部件在dp中的默认高度。 这个小部件至少会达到这个高度,并且通常会给予更多,这取决于主机。
该字段对应于AppWidget元数据文件中的 android:minHeight
属性。
int minResizeHeight
小部件可以调整大小的最小高度(以dp为单位)。 如果该字段大于minHeight或未启用垂直调整大小,则此字段无效(请参阅resizeMode
)。
该字段对应于AppWidget元数据文件中的 android:minResizeHeight
属性。
int minResizeWidth
窗口小部件可以调整大小的最小宽度(以dp为单位)。 如果该字段大于resizeMode
启用水平调整大小,则此字段无效(请参阅resizeMode
)。
该字段对应于AppWidget元数据文件中的 android:minResizeWidth
属性。
int minWidth
添加到主机时,窗口小部件在dp中的默认高度。 小部件至少会得到这个宽度,并且通常会给予更多,这取决于主机。
该字段对应于AppWidget元数据文件中的 android:minWidth
属性。
int previewImage
预览AppWidget配置后的外观。 如果未提供,则使用AppWidget的图标。
该字段对应于AndroidManifest.xml文件中 <receiver>
元素中的 android:previewImage
属性。
ComponentName provider
此AppWidget组件的标识。 这个组件应该是一个BroadcastReceiver
,它会发送AppWidget意图as described in the AppWidget package documentation
。
该字段对应于AndroidManifest.xml文件中 <receiver>
元素中的 android:name
属性。
int resizeMode
小部件可以调整大小的规则。 见RESIZE_NONE
, RESIZE_NONE
, RESIZE_HORIZONTAL
, RESIZE_VERTICAL
, RESIZE_BOTH
。
该字段对应于AppWidget元数据文件中的 android:resizeMode
属性。
int updatePeriodMillis
这个AppWidget想要更新的频率(以毫秒为单位)。 AppWidget管理器可能会限制AppWidget更新的频率。
该字段对应于AppWidget元数据文件中的 android:updatePeriodMillis
属性。
注意:通过 updatePeriodMillis
请求的更新不会每30分钟发送一次。
int widgetCategory
确定是否可以在主屏幕,键盘保护程序或两者上显示此小组件。 显示在两者上的小部件需要确保它遵循两个小部件类的设计准则。 这可以通过查询其窗口小部件提供程序的更新方法中的AppWidget选项来实现。
该字段对应于AppWidget元数据文件中的 widgetCategory
属性。
AppWidgetProviderInfo (Parcel in)
从包中解开AppWidgetProviderInfo。
Parameters | |
---|---|
in |
Parcel
|
AppWidgetProviderInfo clone ()
创建并返回此对象的副本。 “复制”的确切含义可能取决于对象的类别。 一般意图是,对于任何对象x
,表达式:
will be true, and that the expression:x.clone() != x
will bex.clone().getClass() == x.getClass()
true
, but these are not absolute requirements. While it is typically the case that:
will bex.clone().equals(x)
true
, this is not an absolute requirement.
按照惯例,返回的对象应该通过调用super.clone
获得。 如果一个类和它的所有超类( Object
除外)都遵守这个约定,那将是x.clone().getClass() == x.getClass()
。
按照惯例,这个方法返回的对象应该独立于这个对象(被克隆)。 为了实现这种独立性,可能有必要在返回之前修改super.clone
返回的对象的一个或多个字段。 通常,这意味着复制包含被克隆对象的内部“深层结构”的任何可变对象,并将这些对象的引用替换为对这些副本的引用。 如果一个类只包含原始字段或对不可变对象的引用,那么通常情况下,不需要修改由super.clone
返回的对象中的字段。
类Object
的方法clone
执行特定的克隆操作。 首先,如果该对象的类没有实现接口Cloneable
,则引发CloneNotSupportedException
。 请注意,所有阵列都被视为实现接口Cloneable
并且clone
阵列类型T[]
方法的返回类型为T[]
,其中T是任何引用或原始类型。 否则,此方法创建该对象的类的新实例,并使用该对象的相应字段的内容来初始化其所有字段,就像通过赋值一样; 这些字段的内容本身并不克隆。 因此,此方法执行此对象的“浅拷贝”,而不是“深拷贝”操作。
类 Object
本身并不实现接口 Cloneable
,所以在类 Object
的对象上调用 clone
方法将导致在运行时抛出异常。
Returns | |
---|---|
AppWidgetProviderInfo |
a clone of this instance. |
int describeContents ()
描述此Parcelable实例的封送表示中包含的特殊对象的种类。 例如,如果对象将在writeToParcel(Parcel, int)
的输出中包含writeToParcel(Parcel, int)
,则此方法的返回值必须包含CONTENTS_FILE_DESCRIPTOR
位。
Returns | |
---|---|
int |
a bitmask indicating the set of special object types marshaled by this Parcelable object instance. |
UserHandle getProfile ()
获取提供者所在的用户配置文件。
Returns | |
---|---|
UserHandle |
The hosting user profile. |
Drawable loadIcon (Context context, int density)
加载AppWidget选择器中显示的AppWidget图标。 如果未在xml中提供,则将使用应用程序图标。 客户可以选择提供所需的密度,如DENSITY_LOW
DENSITY_MEDIUM
等。如果未提供密度,则将使用当前显示的密度。
加载的图标对应于AndroidManifest.xml文件中的 <receiver>
元素中的 android:icon
属性。
Parameters | |
---|---|
context |
Context : Context for accessing resources. |
density |
int : The optional desired density as per densityDpi . |
Returns | |
---|---|
Drawable |
The provider icon. |
String loadLabel (PackageManager packageManager)
加载本地化标签以显示给AppWidget选取器中的用户。
Parameters | |
---|---|
packageManager |
PackageManager : Package manager instance for loading resources. |
Returns | |
---|---|
String |
The label for the current locale. |
Drawable loadPreviewImage (Context context, int density)
加载AppWidget配置后的外观预览。 客户可以选择提供所需的密度,如DENSITY_LOW
DENSITY_MEDIUM
等。如果未提供密度,则将使用当前显示的密度。
加载的图像对应于AndroidManifest.xml文件中 <receiver>
元素的 android:previewImage
属性。
Parameters | |
---|---|
context |
Context : Context for accessing resources. |
density |
int : The optional desired density as per densityDpi . |
Returns | |
---|---|
Drawable |
The widget preview image or null if preview image is not available. |
String toString ()
返回对象的字符串表示形式。 一般来说, toString
方法返回一个“文本表示”该对象的字符串。 结果应该是一个简洁但内容丰富的表述,对于一个人来说很容易阅读。 建议所有子类重写此方法。
类Object
的toString
方法返回一个字符串,其中包含对象为实例的类的名称,符号字符“ @
”以及对象的哈希代码的无符号十六进制表示形式。 换句话说,这个方法返回一个字符串,其值等于:
getClass().getName() + '@' + Integer.toHexString(hashCode())
Returns | |
---|---|
String |
a string representation of the object. |
void writeToParcel (Parcel out, int flags)
将此对象平铺到一个包裹中。
Parameters | |
---|---|
out |
Parcel : The Parcel in which the object should be written. |
flags |
int : Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE . |