Idioma

AlphabeticIndex Classe

Definição

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma.

[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
Herança
AlphabeticIndex
Atributos
Implementações

Comentários

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma. Ele pode dar suporte ao uso direto ou usar com um cliente que não dá suporte à ordenação localizada. Veja a seguir um exemplo de como um índice pode ser em uma interface do usuário:

<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
             ...

A classe pode gerar uma lista de rótulos para uso como um "índice" da interface do usuário, ou seja, uma lista de caracteres clicáveis (ou sequências de caracteres) que permitem que o usuário veja um segmento (bucket) de uma lista maior de "destino". Ou seja, cada rótulo corresponde a um bucket na lista de destino, em que tudo no bucket é maior ou igual ao caractere (de acordo com a ordenação da localidade). Cadeias de caracteres podem ser adicionadas ao índice; eles estarão em ordem classificada no bucket direito.

A classe também dá suporte a ter buckets para cadeias de caracteres antes do primeiro (subfluxo), após o último (estouro) e entre scripts (fluxo). Por exemplo, se o índice for construído com rótulos para russo e inglês, os caracteres gregos cairão em um bucket de entrada entre os outros dois scripts.

<em>Observação:</em> Se você espera ter muitos caracteres ASCII ou latinos, bem como caracteres do idioma do usuário, é uma boa ideia chamar addLabels(ULocale.English).

<h2>Uso< Direto/h2>

O exemplo a seguir mostra um exemplo de criação direta de um índice. O "show..." os métodos abaixo são apenas para ilustrar o uso.

// Create a simple index where the values for the strings are Integers, and add the strings

            AlphabeticIndex&lt;Integer&gt; index = new AlphabeticIndex&lt;Integer&gt;(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&lt;Integer&gt; bucket : index) {
                if (showAll || bucket.size() != 0) {
                    showLabelAtTop(UI, bucket.getLabel());
                }
            }
             ...
            // Show the buckets with their contents, skipping empty buckets

            for (AlphabeticIndex.Bucket&lt;Integer&gt; bucket : index) {
                if (bucket.size() != 0) {
                    showLabelInList(UI, bucket.getLabel());
                    for (AlphabeticIndex.Record&lt;Integer&gt; item : bucket) {
                        showIndexedItem(UI, item.getName(), item.getData());
                    }

O chamador pode criar UIs diferentes usando essa classe. Por exemplo, um caractere de índice poderá ser omitido ou esmaecido se o bucket estiver vazio. Buckets pequenos também podem ser combinados com base no tamanho, como:

<b>... A-F G-N O-Z ...</b>

<Suporte> ao cliente h2</h2>

Os chamadores também podem usar o AlphabeticIndex.ImmutableIndex, ou o alphabeticIndex em si, para dar suporte à classificação em um cliente que não dá suporte à funcionalidade AlphabeticIndex.

O ImmutableIndex é imutável e thread-safe. Os métodos AlphabeticIndex correspondentes não são thread-safe porque criam "preguiçosamente" os buckets de índice. <ul><li>ImmutableIndex.getBucket(index) fornece acesso aleatório a todos os buckets e seus rótulos e tipos de rótulo. <li>AlphabeticIndex.getBucketLabels() ou o iterador de bucket em qualquer classe pode ser usado para obter uma lista dos rótulos, como "...", "A", "B",..., e enviar essa lista para o cliente. <li>Quando o cliente tem um novo nome, ele envia esse nome para o servidor. O servidor precisa chamar os métodos a seguir e comunicar o bucketIndex e o collationKey de volta ao cliente.

int bucketIndex = index.getBucketIndex(name);
            String label = immutableIndex.getBucket(bucketIndex).getLabel();  // optional
            RawCollationKey collationKey = collator.getRawCollationKey(name, null);

<li>O cliente colocaria o nome (e informações associadas) em seu bucket para bucketIndex. A collationKey é uma sequência de bytes que pode ser comparada com uma comparação binária e produz o resultado localizado correto.</li></ul>

Java documentação para android.icu.text.AlphabeticIndex.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.

Construtores

Nome Description
AlphabeticIndex(Locale)

Crie o objeto index.

AlphabeticIndex(RuleBasedCollator)

Crie um AlphabeticIndex que use um collator específico.

AlphabeticIndex(ULocale)

Crie o objeto index.

Propriedades

Nome Description
BucketCount

Retorne o número de buckets no índice.

BucketLabels

Obtenha os rótulos.

Class

Retorna a classe de runtime deste Object.

(Herdado de Object)
Collator

Obtenha um clone do collator usado internamente.

Handle

O identificador para a instância subjacente do Android.

(Herdado de Object)
InflowLabel

Obtenha o rótulo padrão usado para buckets abreviados entre outros rótulos.

JniIdentityHashCode

Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade.

(Herdado de Object)
JniManagedPeerState

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma.

(Herdado de JavaObject)
JniPeerMembers

Obtém os metadados JNI usados para acessar membros dessa associação Java.

MaxLabelCount

Obtenha o limite do número de rótulos no índice.

OverflowLabel

Obtenha o rótulo padrão usado na localidade indexCharacters para estouro, por exemplo, o primeiro item em: .

PeerReference

Obtém a referência de objeto JNI para este par Java.

(Herdado de Object)
RecordCount

Retornar o número de registros no índice: ou seja, o número total de < distintos; name,data> pares adicionados com addRecord(.

ThresholdClass

Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código.

(Herdado de Object)
ThresholdType

Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código.

(Herdado de Object)
UnderflowLabel

Obtenha o rótulo padrão usado na localidade dos IndexCharacters para o subfluxo, por exemplo, o último item em: X Y Z .

Métodos

Nome Description
AddLabels(Locale[])

Adicionar mais caracteres de índice (além do que estão na localidade)

AddLabels(ULocale[])

Adicionar mais caracteres de índice (além do que estão na localidade)

AddLabels(UnicodeSet)

Adicionar mais caracteres de índice (além do que estão na localidade)

AddRecord(ICharSequence, Object)

Adicione um registro (nome e dados) ao índice.

AddRecord(String, Object)

Adicione um registro (nome e dados) ao índice.

BuildImmutableIndex()

Cria uma versão imutável e segura de thread desta instância, sem registros de dados.

ClearRecords()

Limpe o índice.

Clone()

Cria e retorna uma cópia desse objeto.

(Herdado de Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma.

(Herdado de JavaObject)
Dispose()

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
Dispose(Boolean)

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
DisposeUnlessReferenced()

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma.

(Herdado de JavaObject)
Equals(Object)

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma.

(Herdado de JavaObject)
Equals(Object)

Indica se algum outro objeto é "igual a" este.

(Herdado de Object)
GetBucketIndex(ICharSequence)

Obtenha o número do bucket para o nome fornecido.

GetBucketIndex(String)

Obtenha o número do bucket para o nome fornecido.

GetHashCode()

Retorna um valor de código hash para o objeto.

(Herdado de Object)
Iterator()

Retorne um iterador sobre os buckets.

JavaFinalize()
Obsoleto.

Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto.

(Herdado de Object)
Notify()

Ativa um único thread que está aguardando no monitor deste objeto.

(Herdado de Object)
NotifyAll()

Ativa todos os threads que estão aguardando no monitor deste objeto.

(Herdado de Object)
SetHandle(IntPtr, JniHandleOwnership)

Define a propriedade Handle

(Herdado de Object)
SetInflowLabel(String)

Definir o rótulo inflowLabel

SetMaxLabelCount(Int32)

Defina um limite no número de rótulos no índice.

SetOverflowLabel(String)

Definir o rótulo de estouro

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma.

(Herdado de JavaObject)
SetUnderflowLabel(String)

Definir o rótulo underflowLabel

ToArray<T>()

Cria uma matriz gerenciada com base nesse wrapper de matriz Java.

(Herdado de Object)
ToString()

Retorna uma representação de cadeia de caracteres do objeto.

(Herdado de Object)
UnregisterFromRuntime()

Cancela o registro desse par Java do runtime de interoperabilidade.

(Herdado de Object)
Wait()

Faz com que o thread atual aguarde até ser despertado, normalmente por ser <notificado/em> ou <em>interrompido</em>.<>

(Herdado de Object)
Wait(Int64, Int32)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)
Wait(Int64)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)

Implantações explícitas de interface

Nome Description
IJavaPeerable.Disposed()

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma.

(Herdado de JavaObject)
IJavaPeerable.Finalized()

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma.

(Herdado de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma.

(Herdado de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma.

(Herdado de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma.

(Herdado de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma.

(Herdado de JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Remove essa instância da pesquisa de objeto Java do runtime.

Métodos de Extensão

Nome Description
GetJniTypeName(IJavaPeerable)

Obtém o nome JNI do tipo da instância self.

JavaAs<TResult>(IJavaPeerable)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

JavaCast<TResult>(IJavaObject)

Executa uma conversão de tipo marcada por runtime do Android.

JavaCast<TResult>(IJavaObject)

AlphabeticIndex dá suporte à criação de um índice de interface do usuário apropriado para um determinado idioma.

ToEnumerable(IIterable)

Retorna um IEnumerable que itera em um JavaIIterable, permitindo foreach que e LINQ sejam usados com tipos de coleção Java. Cada elemento é empacotado de sua instância de Java para o tipo gerenciado correspondente.

ToEnumerable<T>(IIterable)

Retorna um IEnumerable<T> que itera em um JavaIIterable, marshaling de cada elemento para T. Isso permite que foreach o LINQ seja usado com tipos de coleção Java.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

Aplica-se a