Android APIs
public class

MockResources

extends Resources
java.lang.Object
   ↳ android.content.res.Resources
     ↳ android.test.mock.MockResources

Class Overview

A mock Resources class. All methods are non-functional and throw UnsupportedOperationException. Override it to provide the operations that you need.

Summary

Public Constructors
MockResources()
Public Methods
XmlResourceParser getAnimation(int id)
Return an XmlResourceParser through which you can read an animation description for the given resource ID.
int getColor(int id)
Return a color integer associated with a particular resource ID.
ColorStateList getColorStateList(int id)
Return a color state list associated with a particular resource ID.
Configuration getConfiguration()
Return the current configuration that is in effect for this resource object.
float getDimension(int id)
Retrieve a dimensional for a particular resource ID.
int getDimensionPixelOffset(int id)
Retrieve a dimensional for a particular resource ID for use as an offset in raw pixels.
int getDimensionPixelSize(int id)
Retrieve a dimensional for a particular resource ID for use as a size in raw pixels.
DisplayMetrics getDisplayMetrics()
Return the current display metrics that are in effect for this resource object.
Drawable getDrawable(int id)
Return a drawable object associated with a particular resource ID.
int getIdentifier(String name, String defType, String defPackage)
Return a resource identifier for the given resource name.
int[] getIntArray(int id)
Return the int array associated with a particular resource ID.
int getInteger(int id)
Return an integer associated with a particular resource ID.
XmlResourceParser getLayout(int id)
Return an XmlResourceParser through which you can read a view layout description for the given resource ID.
Movie getMovie(int id)
Return a movie object associated with the particular resource ID.
String getQuantityString(int id, int quantity)
Returns the string necessary for grammatically correct pluralization of the given resource ID for the given quantity.
String getQuantityString(int id, int quantity, Object... formatArgs)
Formats the string necessary for grammatically correct pluralization of the given resource ID for the given quantity, using the given arguments.
CharSequence getQuantityText(int id, int quantity)
Returns the character sequence necessary for grammatically correct pluralization of the given resource ID for the given quantity.
String getResourceEntryName(int resid)
Return the entry name for a given resource identifier.
String getResourceName(int resid)
Return the full name for a given resource identifier.
String getResourcePackageName(int resid)
Return the package name for a given resource identifier.
String getResourceTypeName(int resid)
Return the type name for a given resource identifier.
String getString(int id)
Return the string value associated with a particular resource ID. It will be stripped of any styled text information.
String getString(int id, Object... formatArgs)
Return the string value associated with a particular resource ID, substituting the format arguments as defined in Formatter and format(String, Object...). It will be stripped of any styled text information.
String[] getStringArray(int id)
Return the string array associated with a particular resource ID.
CharSequence getText(int id, CharSequence def)
Return the string value associated with a particular resource ID.
CharSequence getText(int id)
Return the string value associated with a particular resource ID. The returned object will be a String if this is a plain string; it will be some other type of CharSequence if it is styled.
CharSequence[] getTextArray(int id)
Return the styled text array associated with a particular resource ID.
void getValue(String name, TypedValue outValue, boolean resolveRefs)
Return the raw data associated with a particular resource ID.
void getValue(int id, TypedValue outValue, boolean resolveRefs)
Return the raw data associated with a particular resource ID.
XmlResourceParser getXml(int id)
Return an XmlResourceParser through which you can read a generic XML resource for the given resource ID.
TypedArray obtainAttributes(AttributeSet set, int[] attrs)
Retrieve a set of basic attribute values from an AttributeSet, not performing styling of them using a theme and/or style resources.
TypedArray obtainTypedArray(int id)
Return an array of heterogeneous values.
InputStream openRawResource(int id)
Open a data stream for reading a raw resource.
AssetFileDescriptor openRawResourceFd(int id)
Open a file descriptor for reading a raw resource.
void updateConfiguration(Configuration config, DisplayMetrics metrics)
Store the newly updated configuration.
[Expand]
Inherited Methods
From class android.content.res.Resources
From class java.lang.Object

Public Constructors

public MockResources ()

Added in API level 1

Public Methods

public XmlResourceParser getAnimation (int id)

Added in API level 1

Return an XmlResourceParser through which you can read an animation description for the given resource ID. This parser has limited functionality -- in particular, you can't change its input, and only the high-level events are available.

This function is really a simple wrapper for calling getXml(int) with an animation resource.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • A new parser object through which you can read the XML data.

public int getColor (int id)

Added in API level 1

Return a color integer associated with a particular resource ID. If the resource holds a complex ColorStateList, then the default color from the set is returned.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Returns a single color value in the form 0xAARRGGBB.

public ColorStateList getColorStateList (int id)

Added in API level 1

Return a color state list associated with a particular resource ID. The resource may contain either a single raw color value, or a complex ColorStateList holding multiple possible colors.

Parameters
id The desired resource identifier of a ColorStateList, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Returns a ColorStateList object containing either a single solid color or multiple colors that can be selected based on a state.

public Configuration getConfiguration ()

Added in API level 1

Return the current configuration that is in effect for this resource object. The returned object should be treated as read-only.

Returns
  • The resource's current configuration.

public float getDimension (int id)

Added in API level 1

Retrieve a dimensional for a particular resource ID. Unit conversions are based on the current DisplayMetrics associated with the resources.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Resource dimension value multiplied by the appropriate metric.

public int getDimensionPixelOffset (int id)

Added in API level 1

Retrieve a dimensional for a particular resource ID for use as an offset in raw pixels. This is the same as getDimension(int), except the returned value is converted to integer pixels for you. An offset conversion involves simply truncating the base value to an integer.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Resource dimension value multiplied by the appropriate metric and truncated to integer pixels.

public int getDimensionPixelSize (int id)

Added in API level 1

Retrieve a dimensional for a particular resource ID for use as a size in raw pixels. This is the same as getDimension(int), except the returned value is converted to integer pixels for use as a size. A size conversion involves rounding the base value, and ensuring that a non-zero base value is at least one pixel in size.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Resource dimension value multiplied by the appropriate metric and truncated to integer pixels.

public DisplayMetrics getDisplayMetrics ()

Added in API level 1

Return the current display metrics that are in effect for this resource object. The returned object should be treated as read-only.

Returns
  • The resource's current display metrics.

public Drawable getDrawable (int id)

Added in API level 1

Return a drawable object associated with a particular resource ID. Various types of objects will be returned depending on the underlying resource -- for example, a solid color, PNG image, scalable image, etc. The Drawable API hides these implementation details.

Note: Prior to JELLY_BEAN, this function would not correctly retrieve the final configuration density when the resource ID passed here is an alias to another Drawable resource. This means that if the density configuration of the alias resource is different than the actual resource, the density of the returned Drawable would be incorrect, resulting in bad scaling. To work around this, you can instead retrieve the Drawable through TypedArray.getDrawable. Use Context.obtainStyledAttributes with an array containing the resource ID of interest to create the TypedArray.

Note: To obtain a themed drawable, use Context.getDrawable(int) or getDrawable(int, Theme) passing the desired theme.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Drawable An object that can be used to draw this resource.

public int getIdentifier (String name, String defType, String defPackage)

Added in API level 1

Return a resource identifier for the given resource name. A fully qualified resource name is of the form "package:type/entry". The first two components (package and type) are optional if defType and defPackage, respectively, are specified here.

Note: use of this function is discouraged. It is much more efficient to retrieve resources by identifier than by name.

Parameters
name The name of the desired resource.
defType Optional default resource type to find, if "type/" is not included in the name. Can be null to require an explicit type.
defPackage Optional default package to find, if "package:" is not included in the name. Can be null to require an explicit package.
Returns
  • int The associated resource identifier. Returns 0 if no such resource was found. (0 is not a valid resource ID.)

public int[] getIntArray (int id)

Added in API level 1

Return the int array associated with a particular resource ID.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • The int array associated with the resource.

public int getInteger (int id)

Added in API level 1

Return an integer associated with a particular resource ID.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Returns the integer value contained in the resource.

public XmlResourceParser getLayout (int id)

Added in API level 1

Return an XmlResourceParser through which you can read a view layout description for the given resource ID. This parser has limited functionality -- in particular, you can't change its input, and only the high-level events are available.

This function is really a simple wrapper for calling getXml(int) with a layout resource.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • A new parser object through which you can read the XML data.

public Movie getMovie (int id)

Added in API level 1

Return a movie object associated with the particular resource ID.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.

public String getQuantityString (int id, int quantity)

Added in API level 1

Returns the string necessary for grammatically correct pluralization of the given resource ID for the given quantity. Note that the string is selected based solely on grammatical necessity, and that such rules differ between languages. Do not assume you know which string will be returned for a given quantity. See String Resources for more detail.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
quantity The number used to get the correct string for the current language's plural rules.
Returns
  • String The string data associated with the resource, stripped of styled text information.

public String getQuantityString (int id, int quantity, Object... formatArgs)

Added in API level 1

Formats the string necessary for grammatically correct pluralization of the given resource ID for the given quantity, using the given arguments. Note that the string is selected based solely on grammatical necessity, and that such rules differ between languages. Do not assume you know which string will be returned for a given quantity. See String Resources for more detail.

Substitution of format arguments works as if using Formatter and format(String, Object...). The resulting string will be stripped of any styled text information.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
quantity The number used to get the correct string for the current language's plural rules.
formatArgs The format arguments that will be used for substitution.
Returns
  • String The string data associated with the resource, stripped of styled text information.

public CharSequence getQuantityText (int id, int quantity)

Added in API level 1

Returns the character sequence necessary for grammatically correct pluralization of the given resource ID for the given quantity. Note that the character sequence is selected based solely on grammatical necessity, and that such rules differ between languages. Do not assume you know which string will be returned for a given quantity. See String Resources for more detail.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
quantity The number used to get the correct string for the current language's plural rules.
Returns
  • CharSequence The string data associated with the resource, plus possibly styled text information.

public String getResourceEntryName (int resid)

Added in API level 1

Return the entry name for a given resource identifier.

Parameters
resid The resource identifier whose entry name is to be retrieved.
Returns
  • A string holding the entry name of the resource.

public String getResourceName (int resid)

Added in API level 1

Return the full name for a given resource identifier. This name is a single string of the form "package:type/entry".

Parameters
resid The resource identifier whose name is to be retrieved.
Returns
  • A string holding the name of the resource.

public String getResourcePackageName (int resid)

Added in API level 1

Return the package name for a given resource identifier.

Parameters
resid The resource identifier whose package name is to be retrieved.
Returns
  • A string holding the package name of the resource.

public String getResourceTypeName (int resid)

Added in API level 1

Return the type name for a given resource identifier.

Parameters
resid The resource identifier whose type name is to be retrieved.
Returns
  • A string holding the type name of the resource.

public String getString (int id)

Added in API level 1

Return the string value associated with a particular resource ID. It will be stripped of any styled text information.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • String The string data associated with the resource, stripped of styled text information.

public String getString (int id, Object... formatArgs)

Added in API level 1

Return the string value associated with a particular resource ID, substituting the format arguments as defined in Formatter and format(String, Object...). It will be stripped of any styled text information.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
formatArgs The format arguments that will be used for substitution.
Returns
  • String The string data associated with the resource, stripped of styled text information.

public String[] getStringArray (int id)

Added in API level 1

Return the string array associated with a particular resource ID.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • The string array associated with the resource.

public CharSequence getText (int id, CharSequence def)

Added in API level 1

Return the string value associated with a particular resource ID. The returned object will be a String if this is a plain string; it will be some other type of CharSequence if it is styled.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
def The default CharSequence to return.
Returns
  • CharSequence The string data associated with the resource, plus possibly styled text information, or def if id is 0 or not found.

public CharSequence getText (int id)

Added in API level 1

Return the string value associated with a particular resource ID. The returned object will be a String if this is a plain string; it will be some other type of CharSequence if it is styled.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • CharSequence The string data associated with the resource, plus possibly styled text information.

public CharSequence[] getTextArray (int id)

Added in API level 1

Return the styled text array associated with a particular resource ID.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • The styled text array associated with the resource.

public void getValue (String name, TypedValue outValue, boolean resolveRefs)

Added in API level 1

Return the raw data associated with a particular resource ID. See getIdentifier() for information on how names are mapped to resource IDs, and getString(int) for information on how string resources are retrieved.

Note: use of this function is discouraged. It is much more efficient to retrieve resources by identifier than by name.

Parameters
name The name of the desired resource. This is passed to getIdentifier() with a default type of "string".
outValue Object in which to place the resource data.
resolveRefs If true, a resource that is a reference to another resource will be followed so that you receive the actual final resource data. If false, the TypedValue will be filled in with the reference itself.

public void getValue (int id, TypedValue outValue, boolean resolveRefs)

Added in API level 1

Return the raw data associated with a particular resource ID.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
outValue Object in which to place the resource data.
resolveRefs If true, a resource that is a reference to another resource will be followed so that you receive the actual final resource data. If false, the TypedValue will be filled in with the reference itself.

public XmlResourceParser getXml (int id)

Added in API level 1

Return an XmlResourceParser through which you can read a generic XML resource for the given resource ID.

The XmlPullParser implementation returned here has some limited functionality. In particular, you can't change its input, and only high-level parsing events are available (since the document was pre-parsed for you at build time, which involved merging text and stripping comments).

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • A new parser object through which you can read the XML data.

public TypedArray obtainAttributes (AttributeSet set, int[] attrs)

Added in API level 1

Retrieve a set of basic attribute values from an AttributeSet, not performing styling of them using a theme and/or style resources.

Parameters
set The current attribute values to retrieve.
attrs The specific attributes to be retrieved.
Returns
  • Returns a TypedArray holding an array of the attribute values. Be sure to call TypedArray.recycle() when done with it.

public TypedArray obtainTypedArray (int id)

Added in API level 1

Return an array of heterogeneous values.

Parameters
id The desired resource identifier, as generated by the aapt tool. This integer encodes the package, type, and resource entry. The value 0 is an invalid identifier.
Returns
  • Returns a TypedArray holding an array of the array values. Be sure to call TypedArray.recycle() when done with it.

public InputStream openRawResource (int id)

Added in API level 1

Open a data stream for reading a raw resource. This can only be used with resources whose value is the name of an asset files -- that is, it can be used to open drawable, sound, and raw resources; it will fail on string and color resources.

Parameters
id The resource identifier to open, as generated by the appt tool.
Returns
  • InputStream Access to the resource data.

public AssetFileDescriptor openRawResourceFd (int id)

Added in API level 1

Open a file descriptor for reading a raw resource. This can only be used with resources whose value is the name of an asset files -- that is, it can be used to open drawable, sound, and raw resources; it will fail on string and color resources.

This function only works for resources that are stored in the package as uncompressed data, which typically includes things like mp3 files and png images.

Parameters
id The resource identifier to open, as generated by the appt tool.
Returns
  • AssetFileDescriptor A new file descriptor you can use to read the resource. This includes the file descriptor itself, as well as the offset and length of data where the resource appears in the file. A null is returned if the file exists but is compressed.

public void updateConfiguration (Configuration config, DisplayMetrics metrics)

Added in API level 1

Store the newly updated configuration.