public
class
TypedValue
extends Object
java.lang.Object | |
↳ | android.util.TypedValue |
Container for a dynamically typed data value. Primarily used with
Resources
for holding resource values.
Constants | |
---|---|
int |
COMPLEX_MANTISSA_MASK
Complex data: mask to extract mantissa information (after shifting by
|
int |
COMPLEX_MANTISSA_SHIFT
Complex data: bit location of mantissa information. |
int |
COMPLEX_RADIX_0p23
Complex data: the mantissa magnitude is 0 bits -- i.e, 0x0.nnnnnn |
int |
COMPLEX_RADIX_16p7
Complex data: the mantissa magnitude is 16 bits -- i.e, 0xnnnn.nn |
int |
COMPLEX_RADIX_23p0
Complex data: the mantissa is an integral number -- i.e., 0xnnnnnn.0 |
int |
COMPLEX_RADIX_8p15
Complex data: the mantissa magnitude is 8 bits -- i.e, 0xnn.nnnn |
int |
COMPLEX_RADIX_MASK
Complex data: mask to extract radix information (after shifting by
|
int |
COMPLEX_RADIX_SHIFT
Complex data: where the radix information is, telling where the decimal place appears in the mantissa. |
int |
COMPLEX_UNIT_DIP
|
int |
COMPLEX_UNIT_FRACTION
|
int |
COMPLEX_UNIT_FRACTION_PARENT
|
int |
COMPLEX_UNIT_IN
|
int |
COMPLEX_UNIT_MASK
Complex data: mask to extract unit information (after shifting by
|
int |
COMPLEX_UNIT_MM
|
int |
COMPLEX_UNIT_PT
|
int |
COMPLEX_UNIT_PX
|
int |
COMPLEX_UNIT_SHIFT
Complex data: bit location of unit information. |
int |
COMPLEX_UNIT_SP
|
int |
DATA_NULL_EMPTY
|
int |
DATA_NULL_UNDEFINED
|
int |
DENSITY_DEFAULT
If |
int |
DENSITY_NONE
If |
int |
TYPE_ATTRIBUTE
The data field holds an attribute resource identifier (referencing an attribute in the current theme style, not a resource entry). |
int |
TYPE_DIMENSION
The data field holds a complex number encoding a dimension value. |
int |
TYPE_FIRST_COLOR_INT
Identifies the start of integer values that were specified as color constants (starting with '#'). |
int |
TYPE_FIRST_INT
Identifies the start of plain integer values. |
int |
TYPE_FLOAT
The data field holds an IEEE 754 floating point number. |
int |
TYPE_FRACTION
The data field holds a complex number encoding a fraction of a container. |
int |
TYPE_INT_BOOLEAN
The data field holds 0 or 1 that was originally specified as "false" or "true". |
int |
TYPE_INT_COLOR_ARGB4
The data field holds a color that was originally specified as #argb. |
int |
TYPE_INT_COLOR_ARGB8
The data field holds a color that was originally specified as #aarrggbb. |
int |
TYPE_INT_COLOR_RGB4
The data field holds a color that was originally specified as #rgb. |
int |
TYPE_INT_COLOR_RGB8
The data field holds a color that was originally specified as #rrggbb. |
int |
TYPE_INT_DEC
The data field holds a number that was originally specified in decimal. |
int |
TYPE_INT_HEX
The data field holds a number that was originally specified in hexadecimal (0xn). |
int |
TYPE_LAST_COLOR_INT
Identifies the end of integer values that were specified as color constants. |
int |
TYPE_LAST_INT
Identifies the end of plain integer values. |
int |
TYPE_NULL
The value contains no data. |
int |
TYPE_REFERENCE
The data field holds a resource identifier. |
int |
TYPE_STRING
The string field holds string data. |
Fields | |
---|---|
public
int |
assetCookie
Additional information about where the value came from; only set for strings. |
public
int |
changingConfigurations
If the value came from a resource, these are the configurations for which its contents can change. |
public
int |
data
Basic data in the value, interpreted according to |
public
int |
density
If the Value came from a resource, this holds the corresponding pixel density. |
public
int |
resourceId
If Value came from a resource, this holds the corresponding resource id. |
public
CharSequence |
string
If the value holds a string, this is it. |
public
int |
type
The type held by this value, as defined by the constants here. |
Public constructors | |
---|---|
TypedValue()
|
Public methods | |
---|---|
static
float
|
applyDimension(int unit, float value, DisplayMetrics metrics)
Converts an unpacked complex data value holding a dimension to its final floating point value. |
static
final
String
|
coerceToString(int type, int data)
Perform type conversion as per |
final
CharSequence
|
coerceToString()
Regardless of the actual type of the value, try to convert it to a string value. |
static
float
|
complexToDimension(int data, DisplayMetrics metrics)
Converts a complex data value holding a dimension to its final floating point value. |
static
int
|
complexToDimensionPixelOffset(int data, DisplayMetrics metrics)
Converts a complex data value holding a dimension to its final value as an integer pixel offset. |
static
int
|
complexToDimensionPixelSize(int data, DisplayMetrics metrics)
Converts a complex data value holding a dimension to its final value as an integer pixel size. |
static
float
|
complexToFloat(int complex)
Retrieve the base value from a complex data integer. |
static
float
|
complexToFraction(int data, float base, float pbase)
Converts a complex data value holding a fraction to its final floating point value. |
int
|
getComplexUnit()
Return the complex unit type for this value. |
float
|
getDimension(DisplayMetrics metrics)
Return the data for this value as a dimension. |
final
float
|
getFloat()
Return the data for this value as a float. |
float
|
getFraction(float base, float pbase)
Return the data for this value as a fraction. |
void
|
setTo(TypedValue other)
|
String
|
toString()
Returns a string representation of the object. |
Inherited methods | |
---|---|
From
class
java.lang.Object
|
int COMPLEX_MANTISSA_MASK
Complex data: mask to extract mantissa information (after shifting by
COMPLEX_MANTISSA_SHIFT
). This gives us 23 bits of precision;
the top bit is the sign.
Constant Value: 16777215 (0x00ffffff)
int COMPLEX_MANTISSA_SHIFT
Complex data: bit location of mantissa information.
Constant Value: 8 (0x00000008)
int COMPLEX_RADIX_0p23
Complex data: the mantissa magnitude is 0 bits -- i.e, 0x0.nnnnnn
Constant Value: 3 (0x00000003)
int COMPLEX_RADIX_16p7
Complex data: the mantissa magnitude is 16 bits -- i.e, 0xnnnn.nn
Constant Value: 1 (0x00000001)
int COMPLEX_RADIX_23p0
Complex data: the mantissa is an integral number -- i.e., 0xnnnnnn.0
Constant Value: 0 (0x00000000)
int COMPLEX_RADIX_8p15
Complex data: the mantissa magnitude is 8 bits -- i.e, 0xnn.nnnn
Constant Value: 2 (0x00000002)
int COMPLEX_RADIX_MASK
Complex data: mask to extract radix information (after shifting by
COMPLEX_RADIX_SHIFT
). This give us 4 possible fixed point
representations as defined below.
Constant Value: 3 (0x00000003)
int COMPLEX_RADIX_SHIFT
Complex data: where the radix information is, telling where the decimal place appears in the mantissa.
Constant Value: 4 (0x00000004)
int COMPLEX_UNIT_DIP
TYPE_DIMENSION
complex unit: Value is Device Independent
Pixels.
Constant Value: 1 (0x00000001)
int COMPLEX_UNIT_FRACTION
TYPE_FRACTION
complex unit: A basic fraction of the overall
size.
Constant Value: 0 (0x00000000)
int COMPLEX_UNIT_FRACTION_PARENT
TYPE_FRACTION
complex unit: A fraction of the parent size.
Constant Value: 1 (0x00000001)
int COMPLEX_UNIT_IN
TYPE_DIMENSION
complex unit: Value is in inches.
Constant Value: 4 (0x00000004)
int COMPLEX_UNIT_MASK
Complex data: mask to extract unit information (after shifting by
COMPLEX_UNIT_SHIFT
). This gives us 16 possible types, as
defined below.
Constant Value: 15 (0x0000000f)
int COMPLEX_UNIT_MM
TYPE_DIMENSION
complex unit: Value is in millimeters.
Constant Value: 5 (0x00000005)
int COMPLEX_UNIT_PT
TYPE_DIMENSION
complex unit: Value is in points.
Constant Value: 3 (0x00000003)
int COMPLEX_UNIT_PX
TYPE_DIMENSION
complex unit: Value is raw pixels.
Constant Value: 0 (0x00000000)
int COMPLEX_UNIT_SHIFT
Complex data: bit location of unit information.
Constant Value: 0 (0x00000000)
int COMPLEX_UNIT_SP
TYPE_DIMENSION
complex unit: Value is a scaled pixel.
Constant Value: 2 (0x00000002)
int DATA_NULL_EMPTY
TYPE_NULL
data indicating the value was explicitly set to null.
Constant Value: 1 (0x00000001)
int DATA_NULL_UNDEFINED
TYPE_NULL
data indicating the value was not specified.
Constant Value: 0 (0x00000000)
int DENSITY_DEFAULT
If density
is equal to this value, then the density should be
treated as the system's default density value: DENSITY_DEFAULT
.
Constant Value: 0 (0x00000000)
int DENSITY_NONE
If density
is equal to this value, then there is no density
associated with the resource and it should not be scaled.
Constant Value: 65535 (0x0000ffff)
int TYPE_ATTRIBUTE
The data field holds an attribute resource identifier (referencing an attribute in the current theme style, not a resource entry).
Constant Value: 2 (0x00000002)
int TYPE_DIMENSION
The data field holds a complex number encoding a dimension value.
Constant Value: 5 (0x00000005)
int TYPE_FIRST_COLOR_INT
Identifies the start of integer values that were specified as color constants (starting with '#').
Constant Value: 28 (0x0000001c)
int TYPE_FIRST_INT
Identifies the start of plain integer values. Any type value
from this to TYPE_LAST_INT
means the
data field holds a generic integer value.
Constant Value: 16 (0x00000010)
int TYPE_FLOAT
The data field holds an IEEE 754 floating point number.
Constant Value: 4 (0x00000004)
int TYPE_FRACTION
The data field holds a complex number encoding a fraction of a container.
Constant Value: 6 (0x00000006)
int TYPE_INT_BOOLEAN
The data field holds 0 or 1 that was originally specified as "false" or "true".
Constant Value: 18 (0x00000012)
int TYPE_INT_COLOR_ARGB4
The data field holds a color that was originally specified as #argb.
Constant Value: 30 (0x0000001e)
int TYPE_INT_COLOR_ARGB8
The data field holds a color that was originally specified as #aarrggbb.
Constant Value: 28 (0x0000001c)
int TYPE_INT_COLOR_RGB4
The data field holds a color that was originally specified as #rgb.
Constant Value: 31 (0x0000001f)
int TYPE_INT_COLOR_RGB8
The data field holds a color that was originally specified as #rrggbb.
Constant Value: 29 (0x0000001d)
int TYPE_INT_DEC
The data field holds a number that was originally specified in decimal.
Constant Value: 16 (0x00000010)
int TYPE_INT_HEX
The data field holds a number that was originally specified in hexadecimal (0xn).
Constant Value: 17 (0x00000011)
int TYPE_LAST_COLOR_INT
Identifies the end of integer values that were specified as color constants.
Constant Value: 31 (0x0000001f)
int TYPE_LAST_INT
Identifies the end of plain integer values.
Constant Value: 31 (0x0000001f)
int TYPE_NULL
The value contains no data.
Constant Value: 0 (0x00000000)
int TYPE_REFERENCE
The data field holds a resource identifier.
Constant Value: 1 (0x00000001)
int TYPE_STRING
The string field holds string data. In addition, if data is non-zero then it is the string block index of the string and assetCookie is the set of assets the string came from.
Constant Value: 3 (0x00000003)
int assetCookie
Additional information about where the value came from; only set for strings.
int changingConfigurations
If the value came from a resource, these are the configurations for which its contents can change.
int density
If the Value came from a resource, this holds the corresponding pixel density.
int resourceId
If Value came from a resource, this holds the corresponding resource id.
int type
The type held by this value, as defined by the constants here. This tells you how to interpret the other fields in the object.
float applyDimension (int unit, float value, DisplayMetrics metrics)
Converts an unpacked complex data value holding a dimension to its final floating
point value. The two parameters unit and value
are as in TYPE_DIMENSION
.
Parameters | |
---|---|
unit |
int :
The unit to convert from. |
value |
float :
The value to apply the unit to. |
metrics |
DisplayMetrics :
Current display metrics to use in the conversion --
supplies display density and scaling information. |
Returns | |
---|---|
float |
The complex floating point value multiplied by the appropriate metrics depending on its unit. |
String coerceToString (int type, int data)
Perform type conversion as per coerceToString()
on an
explicitly supplied type and data.
Parameters | |
---|---|
type |
int :
The data type identifier. |
data |
int :
The data value. |
Returns | |
---|---|
String |
String The coerced string value. If the value is null or the type is not known, null is returned. |
CharSequence coerceToString ()
Regardless of the actual type of the value, try to convert it to a string value. For example, a color type will be converted to a string of the form #aarrggbb.
Returns | |
---|---|
CharSequence |
CharSequence The coerced string value. If the value is null or the type is not known, null is returned. |
float complexToDimension (int data, DisplayMetrics metrics)
Converts a complex data value holding a dimension to its final floating
point value. The given data must be structured as a
TYPE_DIMENSION
.
Parameters | |
---|---|
data |
int :
A complex data value holding a unit, magnitude, and
mantissa. |
metrics |
DisplayMetrics :
Current display metrics to use in the conversion --
supplies display density and scaling information. |
Returns | |
---|---|
float |
The complex floating point value multiplied by the appropriate metrics depending on its unit. |
int complexToDimensionPixelOffset (int data, DisplayMetrics metrics)
Converts a complex data value holding a dimension to its final value
as an integer pixel offset. This is the same as
complexToDimension(int, DisplayMetrics)
, except the raw floating point value is
truncated to an integer (pixel) value.
The given data must be structured as a
TYPE_DIMENSION
.
Parameters | |
---|---|
data |
int :
A complex data value holding a unit, magnitude, and
mantissa. |
metrics |
DisplayMetrics :
Current display metrics to use in the conversion --
supplies display density and scaling information. |
Returns | |
---|---|
int |
The number of pixels specified by the data and its desired multiplier and units. |
int complexToDimensionPixelSize (int data, DisplayMetrics metrics)
Converts a complex data value holding a dimension to its final value
as an integer pixel size. This is the same as
complexToDimension(int, DisplayMetrics)
, except the raw floating point value is
converted to an integer (pixel) value 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.
The given data must be structured as a
TYPE_DIMENSION
.
Parameters | |
---|---|
data |
int :
A complex data value holding a unit, magnitude, and
mantissa. |
metrics |
DisplayMetrics :
Current display metrics to use in the conversion --
supplies display density and scaling information. |
Returns | |
---|---|
int |
The number of pixels specified by the data and its desired multiplier and units. |
float complexToFloat (int complex)
Retrieve the base value from a complex data integer. This uses the
COMPLEX_MANTISSA_MASK
and COMPLEX_RADIX_MASK
fields of
the data to compute a floating point representation of the number they
describe. The units are ignored.
Parameters | |
---|---|
complex |
int :
A complex data value. |
Returns | |
---|---|
float |
A floating point value corresponding to the complex data. |
float complexToFraction (int data, float base, float pbase)
Converts a complex data value holding a fraction to its final floating
point value. The given data must be structured as a
TYPE_FRACTION
.
Parameters | |
---|---|
data |
int :
A complex data value holding a unit, magnitude, and
mantissa. |
base |
float :
The base value of this fraction. In other words, a
standard fraction is multiplied by this value. |
pbase |
float :
The parent base value of this fraction. In other
words, a parent fraction (nn%p) is multiplied by this
value. |
Returns | |
---|---|
float |
The complex floating point value multiplied by the appropriate base value depending on its unit. |
int getComplexUnit ()
Return the complex unit type for this value. For example, a dimen type
with value 12sp will return COMPLEX_UNIT_SP
. Only use for values
whose type is TYPE_DIMENSION
.
Returns | |
---|---|
int |
The complex unit type. |
float getDimension (DisplayMetrics metrics)
Return the data for this value as a dimension. Only use for values
whose type is TYPE_DIMENSION
.
Parameters | |
---|---|
metrics |
DisplayMetrics :
Current display metrics to use in the conversion --
supplies display density and scaling information. |
Returns | |
---|---|
float |
The complex floating point value multiplied by the appropriate metrics depending on its unit. |
float getFloat ()
Return the data for this value as a float. Only use for values
whose type is TYPE_FLOAT
.
Returns | |
---|---|
float |
float getFraction (float base, float pbase)
Return the data for this value as a fraction. Only use for values whose
type is TYPE_FRACTION
.
Parameters | |
---|---|
base |
float :
The base value of this fraction. In other words, a
standard fraction is multiplied by this value. |
pbase |
float :
The parent base value of this fraction. In other
words, a parent fraction (nn%p) is multiplied by this
value. |
Returns | |
---|---|
float |
The complex floating point value multiplied by the appropriate base value depending on its unit. |
String toString ()
Returns a string representation of the object. In general, the
toString
method returns a string that
"textually represents" this object. The result should
be a concise but informative representation that is easy for a
person to read.
It is recommended that all subclasses override this method.
The toString
method for class Object
returns a string consisting of the name of the class of which the
object is an instance, the at-sign character `@
', and
the unsigned hexadecimal representation of the hash code of the
object. In other words, this method returns a string equal to the
value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
Returns | |
---|---|
String |
a string representation of the object. |