AlphabeticIndex Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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
- 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<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());
}
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 |
| 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 |
| JavaAs<TResult>(IJavaPeerable) |
Tente coagir a digitar |
| 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 |
| ToEnumerable<T>(IIterable) |
Retorna um IEnumerable<T> que itera em um JavaIIterable, marshaling de cada elemento para |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Tente coagir a digitar |