AlphabeticIndex Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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à
- 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<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());
}
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 |
| 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 |
| JavaAs<TResult>(IJavaPeerable) |
Provare a digitare |
| 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 |
| ToEnumerable<T>(IIterable) |
Restituisce un oggetto IEnumerable<T> che scorre un Java IIterable, eseguendo il marshalling di ogni elemento in |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Provare a digitare |