Share via


Locale Class

Definition

A Locale object represents a specific geographical, political, or cultural region.

[Android.Runtime.Register("java/util/Locale", DoNotGenerateAcw=true)]
public sealed class Locale : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable, Java.Lang.ICloneable
[<Android.Runtime.Register("java/util/Locale", DoNotGenerateAcw=true)>]
type Locale = class
    inherit Object
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface ICloneable
Inheritance
Locale
Attributes
Implements

Remarks

A Locale object represents a specific geographical, political, or cultural region. An operation that requires a Locale to perform its task is called <em>locale-sensitive</em> and uses the Locale to tailor information for the user. For example, displaying a number is a locale-sensitive operation&mdash; the number should be formatted according to the customs and conventions of the user's native country, region, or culture.

The Locale class implements IETF BCP 47 which is composed of RFC 4647 "Matching of Language Tags" and RFC 5646 "Tags for Identifying Languages" with support for the LDML (UTS#35, "Unicode Locale Data Markup Language") BCP 47-compatible extensions for locale data exchange.

A Locale object logically consists of the fields described below.

<dl> <dt>"def_language"><b>language</b></dt>

<dd>ISO 639 alpha-2 or alpha-3 language code, or registered language subtags up to 8 alpha letters (for future enhancements). When a language has both an alpha-2 code and an alpha-3 code, the alpha-2 code must be used. You can find a full list of valid language codes in the IANA Language Subtag Registry (search for "Type: language"). The language field is case insensitive, but Locale always canonicalizes to lower case.</dd>

<dd>Well-formed language values have the form [a-zA-Z]{2,8}. Note that this is not the full BCP47 language production, since it excludes extlang. They are not needed since modern three-letter language codes replace them.</dd>

<dd>Example: "en" (English), "ja" (Japanese), "kok" (Konkani)</dd>

<dt>"def_script"><b>script</b></dt>

<dd>ISO 15924 alpha-4 script code. You can find a full list of valid script codes in the IANA Language Subtag Registry (search for "Type: script"). The script field is case insensitive, but Locale always canonicalizes to title case (the first letter is upper case and the rest of the letters are lower case).</dd>

<dd>Well-formed script values have the form [a-zA-Z]{4}</dd>

<dd>Example: "Latn" (Latin), "Cyrl" (Cyrillic)</dd>

<dt>"def_region"><b>country (region)</b></dt>

<dd>ISO 3166 alpha-2 country code or UN M.49 numeric-3 area code. You can find a full list of valid country and region codes in the IANA Language Subtag Registry (search for "Type: region"). The country (region) field is case insensitive, but Locale always canonicalizes to upper case.</dd>

<dd>Well-formed country/region values have the form [a-zA-Z]{2} | [0-9]{3}</dd>

<dd>Example: "US" (United States), "FR" (France), "029" (Caribbean)</dd>

<dt>"def_variant"><b>variant</b></dt>

<dd>Any arbitrary value used to indicate a variation of a Locale. Where there are two or more variant values each indicating its own semantics, these values should be ordered by importance, with most important first, separated by underscore('_'). The variant field is case sensitive.</dd>

<dd>Note: IETF BCP 47 places syntactic restrictions on variant subtags. Also BCP 47 subtags are strictly used to indicate additional variations that define a language or its dialects that are not covered by any combinations of language, script and region subtags. You can find a full list of valid variant codes in the IANA Language Subtag Registry (search for "Type: variant").

However, the variant field in Locale has historically been used for any kind of variation, not just language variations. For example, some supported variants available in Java SE Runtime Environments indicate alternative cultural behaviors such as calendar type or number script. In BCP 47 this kind of information, which does not identify the language, is supported by extension subtags or private use subtags.</dd>

<dd>Well-formed variant values have the form SUBTAG (('_'|'-') SUBTAG)* where SUBTAG = [0-9][0-9a-zA-Z]{3} | [0-9a-zA-Z]{5,8}. (Note: BCP 47 only uses hyphen ('-') as a delimiter, this is more lenient).</dd>

<dd>Example: "polyton" (Polytonic Greek), "POSIX"</dd>

<dt>"def_extensions"><b>extensions</b></dt>

<dd>A map from single character keys to string values, indicating extensions apart from language identification. The extensions in Locale implement the semantics and syntax of BCP 47 extension subtags and private use subtags. The extensions are case insensitive, but Locale canonicalizes all extension keys and values to lower case. Note that extensions cannot have empty values.</dd>

<dd>Well-formed keys are single characters from the set [0-9a-zA-Z]. Well-formed values have the form SUBTAG ('-' SUBTAG)* where for the key 'x' SUBTAG = [0-9a-zA-Z]{1,8} and for other keys SUBTAG = [0-9a-zA-Z]{2,8} (that is, 'x' allows single-character subtags).</dd>

<dd>Example: key="u"/value="ca-japanese" (Japanese Calendar), key="x"/value="java-1-7"</dd> </dl>

<b>Note:</b> Although BCP 47 requires field values to be registered in the IANA Language Subtag Registry, the Locale class does not provide any validation features. The Builder only checks if an individual field satisfies the syntactic requirement (is well-formed), but does not validate the value itself. See Builder for details.

<h3>"def_locale_extension">Unicode locale/language extension</h3>

UTS#35, "Unicode Locale Data Markup Language" defines optional attributes and keywords to override or refine the default behavior associated with a locale. A keyword is represented by a pair of key and type. For example, "nu-thai" indicates that Thai local digits (value:"thai") should be used for formatting numbers (key:"nu").

The keywords are mapped to a BCP 47 extension value using the extension key 'u' (#UNICODE_LOCALE_EXTENSION). The above example, "nu-thai", becomes the extension "u-nu-thai".

Thus, when a Locale object contains Unicode locale attributes and keywords, getExtension(UNICODE_LOCALE_EXTENSION) will return a String representing this information, for example, "nu-thai". The Locale class also provides #getUnicodeLocaleAttributes, #getUnicodeLocaleKeys, and #getUnicodeLocaleType which allow you to access Unicode locale attributes and key/type pairs directly. When represented as a string, the Unicode Locale Extension lists attributes alphabetically, followed by key/type sequences with keys listed alphabetically (the order of subtags comprising a key's type is fixed when the type is defined)

A well-formed locale key has the form [0-9a-zA-Z]{2}. A well-formed locale type has the form "" | [0-9a-zA-Z]{3,8} ('-' [0-9a-zA-Z]{3,8})* (it can be empty, or a series of subtags 3-8 alphanums in length). A well-formed locale attribute has the form [0-9a-zA-Z]{3,8} (it is a single subtag with the same form as a locale type subtag).

The Unicode locale extension specifies optional behavior in locale-sensitive services. Although the LDML specification defines various keys and values, actual locale-sensitive service implementations in a Java Runtime Environment might not support any particular Unicode locale attributes or key/type pairs.

<h4>Creating a Locale</h4>

There are several different ways to create a Locale object.

<h5>Builder</h5>

Using Builder you can construct a Locale object that conforms to BCP 47 syntax.

<h5>Constructors</h5>

The Locale class provides three constructors: <blockquote>

{@link #Locale(String language)}
                {@link #Locale(String language, String country)}
                {@link #Locale(String language, String country, String variant)}

</blockquote> These constructors allow you to create a Locale object with language, country and variant, but you cannot specify script or extensions.

<h5>Factory Methods</h5>

The method #forLanguageTag creates a Locale object for a well-formed BCP 47 language tag.

<h5>Locale Constants</h5>

The Locale class provides a number of convenient constants that you can use to create Locale objects for commonly used locales. For example, the following creates a Locale object for the United States: <blockquote>

Locale.US

</blockquote>

<h4>"LocaleMatching">Locale Matching</h4>

If an application or a system is internationalized and provides localized resources for multiple locales, it sometimes needs to find one or more locales (or language tags) which meet each user's specific preferences. Note that a term "language tag" is used interchangeably with "locale" in this locale matching documentation.

In order to do matching a user's preferred locales to a set of language tags, RFC 4647 Matching of Language Tags defines two mechanisms: filtering and lookup. <em>Filtering</em> is used to get all matching locales, whereas <em>lookup</em> is to choose the best matching locale. Matching is done case-insensitively. These matching mechanisms are described in the following sections.

A user's preference is called a <em>Language Priority List</em> and is expressed as a list of language ranges. There are syntactically two types of language ranges: basic and extended. See Locale.LanguageRange Locale.LanguageRange for details.

<h5>Filtering</h5>

The filtering operation returns all matching language tags. It is defined in RFC 4647 as follows: "In filtering, each language range represents the least specific language tag (that is, the language tag with fewest number of subtags) that is an acceptable match. All of the language tags in the matching set of tags will have an equal or greater number of subtags than the language range. Every non-wildcard subtag in the language range will appear in every one of the matching language tags."

There are two types of filtering: filtering for basic language ranges (called "basic filtering") and filtering for extended language ranges (called "extended filtering"). They may return different results by what kind of language ranges are included in the given Language Priority List. Locale.FilteringMode is a parameter to specify how filtering should be done.

<h5>Lookup</h5>

The lookup operation returns the best matching language tags. It is defined in RFC 4647 as follows: "By contrast with filtering, each language range represents the most specific tag that is an acceptable match. The first matching tag found, according to the user's priority, is considered the closest match and is the item returned."

For example, if a Language Priority List consists of two language ranges, "zh-Hant-TW" and "en-US", in prioritized order, lookup method progressively searches the language tags below in order to find the best matching language tag. <blockquote>

1. zh-Hant-TW
               2. zh-Hant
               3. zh
               4. en-US
               5. en

</blockquote> If there is a language tag which matches completely to a language range above, the language tag is returned.

"*" is the special language range, and it is ignored in lookup.

If multiple language tags match as a result of the subtag '*' included in a language range, the first matching language tag returned by an Iterator over a Collection of language tags is treated as the best matching one.

<h4>Use of Locale</h4>

Once you've created a Locale you can query it for information about itself. Use getCountry to get the country (or region) code and getLanguage to get the language code. You can use getDisplayCountry to get the name of the country suitable for displaying to the user. Similarly, you can use getDisplayLanguage to get the name of the language suitable for displaying to the user. Interestingly, the getDisplayXXX methods are themselves locale-sensitive and have two versions: one that uses the default Locale.Category#DISPLAY DISPLAY locale and one that uses the locale specified as an argument.

The Java Platform provides a number of classes that perform locale-sensitive operations. For example, the NumberFormat class formats numbers, currency, and percentages in a locale-sensitive manner. Classes such as NumberFormat have several convenience methods for creating a default object of that type. For example, the NumberFormat class provides these three convenience methods for creating a default NumberFormat object: <blockquote>

NumberFormat.getInstance()
                NumberFormat.getCurrencyInstance()
                NumberFormat.getPercentInstance()

</blockquote> Each of these methods has two variants; one with an explicit locale and one without; the latter uses the default Locale.Category#FORMAT FORMAT locale: <blockquote>

NumberFormat.getInstance(myLocale)
                NumberFormat.getCurrencyInstance(myLocale)
                NumberFormat.getPercentInstance(myLocale)

</blockquote> A Locale is the mechanism for identifying the kind of object (NumberFormat) that you would like to get. The locale is <STRONG>just</STRONG> a mechanism for identifying objects, <STRONG>not</STRONG> a container for the objects themselves.

<h4>Compatibility</h4>

In order to maintain compatibility with existing usage, Locale's constructors retain their behavior prior to the Java Runtime Environment version 1.7. The same is largely true for the toString method. Thus Locale objects can continue to be used as they were. In particular, clients who parse the output of toString into language, country, and variant fields can continue to do so (although this is strongly discouraged), although the variant field will have additional information in it if script or extensions are present.

In addition, BCP 47 imposes syntax restrictions that are not imposed by Locale's constructors. This means that conversions between some Locales and BCP 47 language tags cannot be made without losing information. Thus toLanguageTag cannot represent the state of locales whose language, country, or variant do not conform to BCP 47.

Because of these issues, it is recommended that clients migrate away from constructing non-conforming locales and use the forLanguageTag and Locale.Builder APIs instead. Clients desiring a string representation of the complete locale can then always rely on toLanguageTag for this purpose.

<h5>"special_cases_constructor">Special cases</h5>

For compatibility reasons, two non-conforming locales are treated as special cases. These are <b>ja_JP_JP</b> and <b>th_TH_TH</b>. These are ill-formed in BCP 47 since the variants are too short. To ease migration to BCP 47, these are treated specially during construction. These two cases (and only these) cause a constructor to generate an extension, all other values behave exactly as they did prior to Java 7.

Java has used ja_JP_JP to represent Japanese as used in Japan together with the Japanese Imperial calendar. This is now representable using a Unicode locale extension, by specifying the Unicode locale key ca (for "calendar") and type japanese. When the Locale constructor is called with the arguments "ja", "JP", "JP", the extension "u-ca-japanese" is automatically added.

Java has used th_TH_TH to represent Thai as used in Thailand together with Thai digits. This is also now representable using a Unicode locale extension, by specifying the Unicode locale key nu (for "number") and value thai. When the Locale constructor is called with the arguments "th", "TH", "TH", the extension "u-nu-thai" is automatically added.

<h5>Serialization</h5>

During serialization, writeObject writes all fields to the output stream, including extensions.

During deserialization, readResolve adds extensions as described in Special Cases, only for the two cases th_TH_TH and ja_JP_JP.

<h5>Legacy language codes</h5>

Locale's constructor has always converted three language codes to their earlier, obsoleted forms: he maps to iw, yi maps to ji, and id maps to in. This continues to be the case, in order to not break backwards compatibility.

The APIs added in 1.7 map between the old and new language codes, maintaining the old codes internal to Locale (so that getLanguage and toString reflect the old code), but using the new codes in the BCP 47 language tag APIs (so that toLanguageTag reflects the new one). This preserves the equivalence between Locales no matter which code or API is used to construct them. Java's default resource bundle lookup mechanism also implements this mapping, so that resources can be named using either convention, see ResourceBundle.Control.

<h5>Three-letter language/country(region) codes</h5>

The Locale constructors have always specified that the language and the country param be two characters in length, although in practice they have accepted any length. The specification has now been relaxed to allow language codes of two to eight characters and country (region) codes of two to three characters, and in particular, three-letter language codes and three-digit region codes as specified in the IANA Language Subtag Registry. For compatibility, the implementation still does not impose a length constraint.

"locale_data"><h4>Locale data</h4>

Note that locale data comes solely from ICU. User-supplied locale service providers (using the java.text.spi or java.util.spi mechanisms) are not supported.

Here are the versions of ICU (and the corresponding CLDR and Unicode versions) used in various Android releases: <table BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <tr><td>Android 1.5 (Cupcake)/Android 1.6 (Donut)/Android 2.0 (Eclair)</td> <td>ICU 3.8</td> <td>CLDR 1.5</td> <td>Unicode 5.0</td></tr> <tr><td>Android 2.2 (Froyo)</td> <td>ICU 4.2</td> <td>CLDR 1.7</td> <td>Unicode 5.1</td></tr> <tr><td>Android 2.3 (Gingerbread)/Android 3.0 (Honeycomb)</td> <td>ICU 4.4</td> <td>CLDR 1.8</td> <td>Unicode 5.2</td></tr> <tr><td>Android 4.0 (Ice Cream Sandwich)</td> <td>ICU 4.6</td> <td>CLDR 1.9</td> <td>Unicode 6.0</td></tr> <tr><td>Android 4.1 (Jelly Bean)</td> <td>ICU 4.8</td> <td>CLDR 2.0</td> <td>Unicode 6.0</td></tr> <tr><td>Android 4.3 (Jelly Bean MR2)</td> <td>ICU 50</td> <td>CLDR 22.1</td> <td>Unicode 6.2</td></tr> <tr><td>Android 4.4 (KitKat)</td> <td>ICU 51</td> <td>CLDR 23</td> <td>Unicode 6.2</td></tr> <tr><td>Android 5.0 (Lollipop)</td> <td>ICU 53</td> <td>CLDR 25</td> <td>Unicode 6.3</td></tr> <tr><td>Android 6.0 (Marshmallow)</td> <td>ICU 55.1</td> <td>CLDR 27.0.1</td> <td>Unicode 7.0</td></tr> <tr><td>Android 7.0 (Nougat)</td> <td>ICU 56.1</td> <td>CLDR 28</td> <td>Unicode 8.0</td></tr> <tr><td>Android 8.0 (Oreo)</td> <td>ICU 58.2</td> <td>CLDR 30.0.3</td> <td>Unicode 9.0</td></tr> <tr><td>Android 9.0 (Pie)</td> <td>ICU 60.2</td> <td>CLDR 32.0.1</td> <td>Unicode 10.0</td></tr> <tr><td>Android 10.0 (Q)</td> <td>ICU 63.2</td> <td>CLDR 34</td> <td>Unicode 11.0</td></tr> </table>

"default_locale"><h4>Be wary of the default locale</h3>

Note that there are many convenience methods that automatically use the default locale, but using them may lead to subtle bugs.

The default locale is appropriate for tasks that involve presenting data to the user. In this case, you want to use the user's date/time formats, number formats, rules for conversion to lowercase, and so on. In this case, it's safe to use the convenience methods.

The default locale is not appropriate for machine-readable output. The best choice there is usually Locale.US&nbsp;&ndash; this locale is guaranteed to be available on all devices, and the fact that it has no surprising special cases and is frequently used (especially for computer-computer communication) means that it tends to be the most efficient choice too.

A common mistake is to implicitly use the default locale when producing output meant to be machine-readable. This tends to work on the developer's test devices (especially because so many developers use en_US), but fails when run on a device whose user is in a more complex locale.

For example, if you're formatting integers some locales will use non-ASCII decimal digits. As another example, if you're formatting floating-point numbers some locales will use ',' as the decimal point and '.' for digit grouping. That's correct for human-readable output, but likely to cause problems if presented to another computer (Double#parseDouble can't parse such a number, for example). You should also be wary of the String#toLowerCase and String#toUpperCase overloads that don't take a Locale: in Turkey, for example, the characters 'i' and 'I' won't be converted to 'I' and 'i'. This is the correct behavior for Turkish text (such as user input), but inappropriate for, say, HTTP headers.

Added in 1.1.

Java documentation for java.util.Locale.

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Constructors

Locale(String, String, String)

Construct a locale from language, country and variant.

Locale(String, String)

Construct a locale from language and country.

Locale(String)

Construct a locale from a language code.

Fields

PrivateUseExtension

The key for the private use extension ('x').

UnicodeLocaleExtension

The key for Unicode locale extension ('u').

Properties

Canada

Useful constant for country.

CanadaFrench

Useful constant for country.

China

Useful constant for country.

Chinese

Useful constant for language.

Class

Returns the runtime class of this Object.

(Inherited from Object)
Country

Returns the country/region code for this locale, which should either be the empty string, an uppercase ISO 3166 2-letter code, or a UN M.

Default

Gets the current value of the default locale for this instance of the Java Virtual Machine. -or- Sets the default locale for this instance of the Java Virtual Machine.

DisplayCountry

Returns a name for the locale's country that is appropriate for display to the user.

DisplayLanguage

Returns a name for the locale's language that is appropriate for display to the user.

DisplayName

Returns a name for the locale that is appropriate for display to the user.

DisplayScript

Returns a name for the locale's script that is appropriate for display to the user.

DisplayVariant

Returns a name for the locale's variant code that is appropriate for display to the user.

English

Useful constant for language.

ExtensionKeys

Returns the set of extension keys associated with this locale, or the empty set if it has no extensions.

France

Useful constant for country.

French

Useful constant for language.

German

Useful constant for language.

Germany

Useful constant for country.

Handle

The handle to the underlying Android instance.

(Inherited from Object)
HasExtensions

Returns true if this Locale has any extensions.

ISO3Country

Returns a three-letter abbreviation for this locale's country.

ISO3Language

Returns a three-letter abbreviation of this locale's language.

Italian

Useful constant for language.

Italy

Useful constant for country.

Japan

Useful constant for country.

Japanese

Useful constant for language.

JniIdentityHashCode (Inherited from Object)
JniPeerMembers
Korea

Useful constant for country.

Korean

Useful constant for language.

Language

Returns the language code of this Locale.

PeerReference (Inherited from Object)
Prc

Useful constant for country.

Root

Useful constant for the root locale.

Script

Returns the script for this locale, which should either be the empty string or an ISO 15924 4-letter script code.

SimplifiedChinese

Useful constant for language.

Taiwan

Useful constant for country.

ThresholdClass

This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.

(Inherited from Object)
ThresholdType

This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.

(Inherited from Object)
TraditionalChinese

Useful constant for language.

Uk

Useful constant for country.

UnicodeLocaleAttributes

Returns the set of unicode locale attributes associated with this locale, or the empty set if it has no attributes.

UnicodeLocaleKeys

Returns the set of Unicode locale keys defined by this locale, or the empty set if this locale has none.

Us

Useful constant for country.

Variant

Returns the variant code for this locale.

Methods

Clone()

Overrides Cloneable.

Dispose() (Inherited from Object)
Dispose(Boolean) (Inherited from Object)
Equals(Object)

Indicates whether some other object is "equal to" this one.

(Inherited from Object)
Filter(IList<Locale.LanguageRange>, ICollection<Locale>, Locale+FilteringMode)

Returns a list of matching Locale instances using the filtering mechanism defined in RFC 4647.

Filter(IList<Locale.LanguageRange>, ICollection<Locale>)

Returns a list of matching Locale instances using the filtering mechanism defined in RFC 4647.

FilterTags(IList<Locale.LanguageRange>, ICollection<String>, Locale+FilteringMode)

Returns a list of matching languages tags using the basic filtering mechanism defined in RFC 4647.

FilterTags(IList<Locale.LanguageRange>, ICollection<String>)

Returns a list of matching languages tags using the basic filtering mechanism defined in RFC 4647.

ForLanguageTag(String)

Returns a locale for the specified IETF BCP 47 language tag string.

GetAvailableLocales()

Returns an array of all installed locales.

GetDefault(Locale+Category)

Gets the current value of the default locale for this instance of the Java Virtual Machine.

GetDisplayCountry(Locale)

Returns the name of this locale's country, localized to locale.

GetDisplayLanguage(Locale)

Returns the name of this locale's language, localized to locale.

GetDisplayName(Locale)

Returns this locale's language name, country name, and variant, localized to locale.

GetDisplayScript(Locale)

Returns a name for the locale's script that is appropriate for display to the user.

GetDisplayVariant(Locale)

Returns a name for the locale's variant code that is appropriate for display to the user.

GetExtension(Char)

Returns the extension (or private use) value associated with the specified key, or null if there is no extension associated with the key.

GetHashCode()

Returns a hash code value for the object.

(Inherited from Object)
GetISOCountries()

Returns a list of all 2-letter country codes defined in ISO 3166.

GetISOCountries(Locale+IsoCountryCode)
GetISOLanguages()

Returns a list of all 2-letter language codes and some of 3-letter codes defined in ISO 639.

GetUnicodeLocaleType(String)

Returns the Unicode locale type associated with the specified Unicode locale key for this locale.

JavaFinalize()

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

(Inherited from Object)
Lookup(IList<Locale.LanguageRange>, ICollection<Locale>)

Returns a Locale instance for the best-matching language tag using the lookup mechanism defined in RFC 4647.

LookupTag(IList<Locale.LanguageRange>, ICollection<String>)

Returns the best-matching language tag using the lookup mechanism defined in RFC 4647.

Notify()

Wakes up a single thread that is waiting on this object's monitor.

(Inherited from Object)
NotifyAll()

Wakes up all threads that are waiting on this object's monitor.

(Inherited from Object)
SetDefault(Locale+Category, Locale)

Sets the default locale for the specified Category for this instance of the Java Virtual Machine.

SetHandle(IntPtr, JniHandleOwnership)

Sets the Handle property.

(Inherited from Object)
StripExtensions()

Returns a copy of this Locale with no extensions.

ToArray<T>() (Inherited from Object)
ToLanguageTag()

Returns a well-formed IETF BCP 47 language tag representing this locale.

ToString()

Returns a string representation of this Locale object, consisting of language, country, variant, script, and extensions as below: <blockquote> language + "" + country + "" + (variant + "#" | "#") + script + "" + extensions </blockquote>

        Language is always lower case, country is always upper case, script is always title
        case, and extensions are always lower case.
UnregisterFromRuntime() (Inherited from Object)
Wait()

Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>.

(Inherited from Object)
Wait(Int64, Int32)

Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>, or until a certain amount of real time has elapsed.

(Inherited from Object)
Wait(Int64)

Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>, or until a certain amount of real time has elapsed.

(Inherited from Object)

Explicit Interface Implementations

IJavaPeerable.Disposed() (Inherited from Object)
IJavaPeerable.DisposeUnlessReferenced() (Inherited from Object)
IJavaPeerable.Finalized() (Inherited from Object)
IJavaPeerable.JniManagedPeerState (Inherited from Object)
IJavaPeerable.SetJniIdentityHashCode(Int32) (Inherited from Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) (Inherited from Object)
IJavaPeerable.SetPeerReference(JniObjectReference) (Inherited from Object)

Extension Methods

JavaCast<TResult>(IJavaObject)

Performs an Android runtime-checked type conversion.

JavaCast<TResult>(IJavaObject)
GetJniTypeName(IJavaPeerable)

Applies to