Lingua

AlphabeticIndex Classe

Definizione

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

[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
Ereditarietà
AlphabeticIndex
Attributi
Implementazioni

Commenti

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua. Può supportare l'uso diretto o l'uso con un client che non supporta le regole di confronto localizzate. Di seguito è riportato un esempio dell'aspetto di un indice in un'interfaccia utente:

<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 classe può generare un elenco di etichette da usare come "indice" dell'interfaccia utente, ovvero un elenco di caratteri selezionabili (o sequenze di caratteri) che consentono all'utente di visualizzare un segmento (bucket) di un elenco di "destinazione" più grande. Ovvero, ogni etichetta corrisponde a un bucket nell'elenco di destinazione, in cui tutti gli elementi nel bucket sono maggiori o uguali al carattere (in base alle regole di confronto delle impostazioni locali). È possibile aggiungere stringhe all'indice; saranno ordinati nel bucket destro.

La classe supporta anche la presenza di bucket per le stringhe prima del primo (underflow), dopo l'ultimo (overflow) e tra gli script (inflow). Ad esempio, se l'indice viene costruito con etichette per russo e inglese, i caratteri greci rientrano in un bucket di flusso tra gli altri due script.

<em>Nota:</em> Se si prevede di avere un sacco di caratteri ASCII o latini e caratteri della lingua dell'utente, è consigliabile chiamare addLabels(ULocale.English).

<h2>Direct Use</h2>

Di seguito viene illustrato un esempio di compilazione diretta di un indice. Il "show..." i metodi seguenti sono solo per illustrare l'utilizzo.

// 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());
                    }

Il chiamante può compilare interfacce utente diverse usando questa classe. Ad esempio, un carattere di indice può essere omesso o disattivato se il relativo bucket è vuoto. I bucket di piccole dimensioni possono anche essere combinati in base alle dimensioni, ad esempio:

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

<h2>Supporto< client/h2>

I chiamanti possono anche usare , AlphabeticIndex.ImmutableIndexo AlfabeticoIndex stesso, per supportare l'ordinamento in un client che non supporta la funzionalità AlphabeticIndex.

ImmutableIndex è sia non modificabile che thread-safe. I metodi AlphabeticIndex corrispondenti non sono thread-safe perché creano "lazily" i bucket di indice. <ul><li>ImmutableIndex.getBucket(index) fornisce accesso casuale a tutti i bucket e alle relative etichette e tipi di etichetta. <li>AlphabeticIndex.getBucketLabels() o l'iteratore bucket in una delle due classi può essere usato per ottenere un elenco delle etichette, ad esempio "...", "A", "B",..., e inviare tale elenco al client. <li>Quando il client ha un nuovo nome, invia tale nome al server. Il server deve chiamare i metodi seguenti e comunicare di nuovo bucketIndex e collationKey al client.

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

<li>Il client inserisce il nome (e le informazioni associate) nel relativo bucket per bucketIndex. La proprietà collationKey è una sequenza di byte che può essere confrontata con un confronto binario e produce il risultato localizzato corretto.</li></ul>

per android.icu.text.AlphabeticIndex.

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.

Costruttori

Nome Descrizione
AlphabeticIndex(Locale)

Creare l'oggetto index.

AlphabeticIndex(RuleBasedCollator)

Creare un oggetto AlphabeticIndex che usa un collator specifico.

AlphabeticIndex(ULocale)

Creare l'oggetto index.

Proprietà

Nome Descrizione
BucketCount

Restituisce il numero di bucket nell'indice.

BucketLabels

Ottenere le etichette.

Class

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
Collator

Ottenere un clone del collator usato internamente.

Handle

Handle per l'istanza di Android sottostante.

(Ereditato da Object)
InflowLabel

Ottiene l'etichetta predefinita usata per i bucket abbreviati tra altre etichette.

JniIdentityHashCode

Ottiene il codice hash di identità assegnato a questo Java peer dal runtime di interoperabilità.

(Ereditato da Object)
JniManagedPeerState

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

(Ereditato da JavaObject)
JniPeerMembers

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

MaxLabelCount

Ottiene il limite per il numero di etichette nell'indice.

OverflowLabel

Ottenere l'etichetta predefinita usata nelle impostazioni locali di IndexCharacters per l'overflow, ad esempio il primo elemento in: .

PeerReference

Ottiene il riferimento all'oggetto JNI per questo peer Java.

(Ereditato da Object)
RecordCount

Restituisce il numero di record nell'indice, ovvero il numero totale di distinct < nome, dati> coppie aggiunte con addRecord(.

ThresholdClass

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

(Ereditato da Object)
ThresholdType

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

(Ereditato da Object)
UnderflowLabel

Ottenere l'etichetta predefinita usata nelle impostazioni locali di IndexCharacters per underflow, ad esempio l'ultimo elemento in: X Y Z .

Metodi

Nome Descrizione
AddLabels(Locale[])

Aggiungere altri caratteri di indice (a parte ciò che si trovano nelle impostazioni locali)

AddLabels(ULocale[])

Aggiungere altri caratteri di indice (a parte ciò che si trovano nelle impostazioni locali)

AddLabels(UnicodeSet)

Aggiungere altri caratteri di indice (a parte ciò che si trovano nelle impostazioni locali)

AddRecord(ICharSequence, Object)

Aggiungere un record (nome e dati) all'indice.

AddRecord(String, Object)

Aggiungere un record (nome e dati) all'indice.

BuildImmutableIndex()

Compila una versione thread-safe non modificabile di questa istanza, senza record di dati.

ClearRecords()

Cancellare l'indice.

Clone()

Crea e restituisce una copia di questo oggetto.

(Ereditato da Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

(Ereditato da JavaObject)
Dispose()

Rilascia le risorse contenute in questo peer Java.

(Ereditato da Object)
Dispose(Boolean)

Rilascia le risorse contenute in questo peer Java.

(Ereditato da Object)
DisposeUnlessReferenced()

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

(Ereditato da JavaObject)
Equals(Object)

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

(Ereditato da JavaObject)
Equals(Object)

Indica se un altro oggetto è "uguale a" questo.

(Ereditato da Object)
GetBucketIndex(ICharSequence)

Ottiene il numero di bucket per il nome specificato.

GetBucketIndex(String)

Ottiene il numero di bucket per il nome specificato.

GetHashCode()

Restituisce un valore di codice hash per l'oggetto .

(Ereditato da Object)
Iterator()

Restituisce un iteratore sui bucket.

JavaFinalize()
Obsoleti.

Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto .

(Ereditato da Object)
Notify()

Riattiva un singolo thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
NotifyAll()

Riattiva tutti i thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
SetHandle(IntPtr, JniHandleOwnership)

Imposta la proprietà Handle.

(Ereditato da Object)
SetInflowLabel(String)

Impostare l'etichetta inflowLabel

SetMaxLabelCount(Int32)

Impostare un limite per il numero di etichette nell'indice.

SetOverflowLabel(String)

Impostare l'etichetta di overflow

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

(Ereditato da JavaObject)
SetUnderflowLabel(String)

Impostare l'etichetta underflowLabel

ToArray<T>()

Crea una matrice gestita da questo wrapper di matrice Java.

(Ereditato da Object)
ToString()

Restituisce una rappresentazione di stringa dell'oggetto .

(Ereditato da Object)
UnregisterFromRuntime()

Annulla la registrazione di questo Java peer dal runtime di interoperabilità.

(Ereditato da Object)
Wait()

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo <>una notifica</em> o <em>interrotto</em>.

(Ereditato da Object)
Wait(Int64, Int32)

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)
Wait(Int64)

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

Nome Descrizione
IJavaPeerable.Disposed()

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

(Ereditato da JavaObject)
IJavaPeerable.Finalized()

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

(Ereditato da JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

(Ereditato da JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

(Ereditato da JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

(Ereditato da JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

(Ereditato da JavaObject)
IJavaPeerable.UnregisterFromRuntime()

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

Metodi di estensione

Nome Descrizione
GetJniTypeName(IJavaPeerable)

Ottiene il nome JNI del tipo dell'istanza selfdi .

JavaAs<TResult>(IJavaPeerable)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

JavaCast<TResult>(IJavaObject)

Esegue una conversione del tipo di tipo controllato dal runtime Android.

JavaCast<TResult>(IJavaObject)

AlphabeticIndex supporta la creazione di un indice dell'interfaccia utente appropriato per una determinata lingua.

ToEnumerable(IIterable)

Restituisce un oggetto IEnumerable che scorre un Java IIterable, consentendo foreach l'utilizzo di e LINQ con i tipi di raccolta Java. Ogni elemento viene sottoposto a marshalling dalla relativa istanza Java al tipo gestito corrispondente.

ToEnumerable<T>(IIterable)

Restituisce un oggetto IEnumerable<T> che scorre un Java IIterable, eseguendo il marshalling di ogni elemento in T. In questo modo è possibile foreach usare LINQ con Java tipi di raccolta.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

Si applica a