AlphabeticIndex Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado.
[Android.Runtime.Register("android/icu/text/AlphabeticIndex", ApiSince=24, DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "V" })]
public sealed class AlphabeticIndex : Java.Lang.Object, IDisposable, Java.Lang.IIterable
[<Android.Runtime.Register("android/icu/text/AlphabeticIndex", ApiSince=24, DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "V" })>]
type AlphabeticIndex = class
inherit Object
interface IIterable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Herencia
- Atributos
- Implementaciones
Comentarios
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. Puede admitir el uso directo o usar con un cliente que no admita la intercalación localizada. A continuación se muestra un ejemplo del aspecto de un índice en una interfaz de usuario:
<b>... A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ...</b>
<b>A</b>
Addison
Albertson
Azensky
<b>B</b>
Baecker
...
La clase puede generar una lista de etiquetas para su uso como "índice" de la interfaz de usuario, es decir, una lista de caracteres en los que se pueden hacer clic (o secuencias de caracteres) que permiten al usuario ver un segmento (cubo) de una lista de "destino" más grande. Es decir, cada etiqueta corresponde a un cubo de la lista de destino, donde todo en el cubo es mayor o igual que el carácter (según la intercalación de la configuración regional). Las cadenas se pueden agregar al índice; estarán ordenados en el cubo derecho.
La clase también admite tener depósitos para cadenas antes del primer (subflujo), después del último (desbordamiento) y entre scripts (flujo). Por ejemplo, si el índice se construye con etiquetas para ruso e inglés, los caracteres griegos caerían en un cubo de flujo entre los otros dos scripts.
<em>Note:</em> Si espera tener muchos caracteres ASCII o latino, así como caracteres del idioma del usuario, es una buena idea llamar a addLabels(ULocale.English).
<h2>Direct Use</h2>
A continuación se muestra un ejemplo de creación de un índice directamente. El "show..." Los métodos siguientes son simplemente para ilustrar el uso.
// Create a simple index where the values for the strings are Integers, and add the strings
AlphabeticIndex<Integer> index = new AlphabeticIndex<Integer>(desiredLocale).addLabels(additionalLocale);
int counter = 0;
for (String item : test) {
index.addRecord(item, counter++);
}
...
// Show index at top. We could skip or gray out empty buckets
for (AlphabeticIndex.Bucket<Integer> bucket : index) {
if (showAll || bucket.size() != 0) {
showLabelAtTop(UI, bucket.getLabel());
}
}
...
// Show the buckets with their contents, skipping empty buckets
for (AlphabeticIndex.Bucket<Integer> bucket : index) {
if (bucket.size() != 0) {
showLabelInList(UI, bucket.getLabel());
for (AlphabeticIndex.Record<Integer> item : bucket) {
showIndexedItem(UI, item.getName(), item.getData());
}
El autor de la llamada puede compilar diferentes interfaces de usuario mediante esta clase. Por ejemplo, un carácter de índice podría omitirse o atenuarse si su cubo está vacío. Los cubos pequeños también se pueden combinar en función del tamaño, como:
<b>... A-F G-N O-Z ...</b>
<h2>Soporte de cliente</h2>
Los autores de llamadas también pueden usar , AlphabeticIndex.ImmutableIndexo el propio AlphabeticIndex, para admitir la ordenación en un cliente que no admite la funcionalidad AlphabeticIndex.
ImmutableIndex es inmutable y seguro para subprocesos. Los métodos alphabeticIndex correspondientes no son seguros para subprocesos porque "están diferenciados" para generar los cubos de índice. <ul><li>ImmutableIndex.getBucket(index) proporciona acceso aleatorio a todos los cubos y sus etiquetas y tipos de etiqueta. <li>AlphabeticIndex.getBucketLabels() o el iterador de cubo en cualquiera de las clases se puede usar para obtener una lista de las etiquetas, como "...", "A", "B",..., y enviar esa lista al cliente. <li>Cuando el cliente tiene un nuevo nombre, envía ese nombre al servidor. El servidor debe llamar a los métodos siguientes y comunicar bucketIndex y collationKey al cliente.
int bucketIndex = index.getBucketIndex(name);
String label = immutableIndex.getBucket(bucketIndex).getLabel(); // optional
RawCollationKey collationKey = collator.getRawCollationKey(name, null);
<li>El cliente colocaría el nombre (y la información asociada) en su cubo para bucketIndex. CollationKey es una secuencia de bytes que se puede comparar con una comparación binaria y genera el resultado localizado a la derecha.</li></ul>
Java documentación para android.icu.text.AlphabeticIndex.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.
Constructores
| Nombre | Description |
|---|---|
| AlphabeticIndex(Locale) |
Cree el objeto de índice. |
| AlphabeticIndex(RuleBasedCollator) |
Cree un alphabeticIndex que use un intercalador específico. |
| AlphabeticIndex(ULocale) |
Cree el objeto de índice. |
Propiedades
| Nombre | Description |
|---|---|
| BucketCount |
Devuelve el número de cubos del índice. |
| BucketLabels |
Obtenga las etiquetas. |
| Class |
Devuelve la clase en tiempo de ejecución de este |
| Collator |
Obtenga un clon del collador usado internamente. |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| InflowLabel |
Obtenga la etiqueta predeterminada que se usa para los cubos abreviados entre otras etiquetas. |
| JniIdentityHashCode |
Obtiene el código hash de identidad asignado a este Java del mismo nivel por el tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| JniManagedPeerState |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. (Heredado de JavaObject) |
| JniPeerMembers |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. |
| MaxLabelCount |
Obtenga el límite en el número de etiquetas del índice. |
| OverflowLabel |
Obtenga la etiqueta predeterminada usada en la configuración regional de IndexCharacters para desbordamiento, por ejemplo, el primer elemento de: . |
| PeerReference |
Obtiene la referencia de objeto JNI para este Java del mismo nivel. (Heredado de Object) |
| RecordCount |
Devuelve el número de registros del índice: es decir, el número total de distintos < name,data> pares agregados con addRecord(. |
| ThresholdClass |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. (Heredado de Object) |
| ThresholdType |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. (Heredado de Object) |
| UnderflowLabel |
Obtenga la etiqueta predeterminada usada en la configuración regional de IndexCharacters para el flujo de subflujo, por ejemplo, el último elemento de: X Y Z . |
Métodos
| Nombre | Description |
|---|---|
| AddLabels(Locale[]) |
Agregar más caracteres de índice (aparte de lo que hay en la configuración regional) |
| AddLabels(ULocale[]) |
Agregar más caracteres de índice (aparte de lo que hay en la configuración regional) |
| AddLabels(UnicodeSet) |
Agregar más caracteres de índice (aparte de lo que hay en la configuración regional) |
| AddRecord(ICharSequence, Object) |
Agregue un registro (nombre y datos) al índice. |
| AddRecord(String, Object) |
Agregue un registro (nombre y datos) al índice. |
| BuildImmutableIndex() |
Compila una versión inmutable y segura para subprocesos de esta instancia, sin registros de datos. |
| ClearRecords() |
Borre el índice. |
| Clone() |
Crea y devuelve una copia de este objeto. (Heredado de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. (Heredado de JavaObject) |
| Dispose() |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| Dispose(Boolean) |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| DisposeUnlessReferenced() |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. (Heredado de JavaObject) |
| Equals(Object) |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. (Heredado de JavaObject) |
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| GetBucketIndex(ICharSequence) |
Obtenga el número de cubo para el nombre especificado. |
| GetBucketIndex(String) |
Obtenga el número de cubo para el nombre especificado. |
| GetHashCode() |
Devuelve un valor de código hash para el objeto . (Heredado de Object) |
| Iterator() |
Devuelve un iterador sobre los cubos. |
| JavaFinalize() |
Obsoletos.
Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto . (Heredado de Object) |
| Notify() |
Activa un único subproceso que está esperando en el monitor de este objeto. (Heredado de Object) |
| NotifyAll() |
Activa todos los subprocesos que están esperando en el monitor de este objeto. (Heredado de Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| SetInflowLabel(String) |
Establecimiento de la etiqueta inflowLabel |
| SetMaxLabelCount(Int32) |
Establezca un límite en el número de etiquetas del índice. |
| SetOverflowLabel(String) |
Establecimiento de la etiqueta de desbordamiento |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. (Heredado de JavaObject) |
| SetUnderflowLabel(String) |
Establecimiento de la etiqueta underflowLabel |
| ToArray<T>() |
Crea una matriz administrada a partir de este contenedor de matriz Java. (Heredado de Object) |
| ToString() |
Devuelve una representación de cadena del objeto . (Heredado de Object) |
| UnregisterFromRuntime() |
Anula el registro de este Java del mismo nivel del tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| Wait() |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser em notificado/em< o >em<interrumpido>/em<.><> (Heredado de Object) |
| Wait(Int64, Int32) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
| Wait(Int64) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| IJavaPeerable.Disposed() |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. (Heredado de JavaObject) |
| IJavaPeerable.Finalized() |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. (Heredado de JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. (Heredado de JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. (Heredado de JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. (Heredado de JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. (Heredado de JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. |
Métodos de extensión
| Nombre | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtiene el nombre JNI del tipo de la instancia |
| JavaAs<TResult>(IJavaPeerable) |
Intente coerción |
| JavaCast<TResult>(IJavaObject) |
Realiza una conversión de tipos comprobados en tiempo de ejecución de Android. |
| JavaCast<TResult>(IJavaObject) |
AlphabeticIndex admite la creación de un índice de interfaz de usuario adecuado para un idioma determinado. |
| ToEnumerable(IIterable) |
Devuelve un IEnumerable objeto que recorre en iteración una Java IIterable, lo que permite |
| ToEnumerable<T>(IIterable) |
Devuelve un IEnumerable<T> objeto que recorre en iteración un Java IIterable, serializar cada elemento en |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |