Lingua

Bidi Classe

Definizione

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
[Android.Runtime.Register("android/icu/text/Bidi", ApiSince=29, DoNotGenerateAcw=true)]
public class Bidi : Java.Lang.Object
[<Android.Runtime.Register("android/icu/text/Bidi", ApiSince=29, DoNotGenerateAcw=true)>]
type Bidi = class
    inherit Object
Ereditarietà
Attributi

Commenti

<Algoritmo h2>Bidi per ICU</h2>

Si tratta di un'implementazione dell'algoritmo bidirezionale Unicode. L'algoritmo è definito nell'allegato standard Unicode n. 9.

Nota: le librerie che eseguono un algoritmo bidirezionale e riordinano le stringhe di conseguenza sono talvolta denominate "Motori di layout di archiviazione". Le classi Bidi e shaping (ArabicShaping) dell'ICU possono essere usate al centro di tali "Motori di layout di archiviazione".

<h3>Osservazioni generali sull'API:</h3>

Il " limit" di una sequenza di caratteri è la posizione subito dopo l'ultimo carattere, ovvero una più di quella posizione.

Alcuni dei metodi API forniscono l'accesso a " run". Tale " run" viene definito come una sequenza di caratteri allo stesso livello di incorporamento dopo l'esecuzione dell'algoritmo Bidi.

<h3>Concetto di base: paragrafo</h3> Un frammento di testo può essere diviso in diversi paragrafi per caratteri con la classe Block SeparatorBidi . Per la gestione dei paragrafi, vedere: <ul><li>#countParagraphs<li>#getParaLevel<li li>#getParagraph<>#getParagraphByIndex</ul>

<h3>Concetto di base: direzione< del testo/h3> La direzione di un pezzo di testo può essere: <ul><li>#LTR<li>#RTL<li li>#MIXED<>#NEUTRAL</ul>

<h3>Concetto di base: livelli</h3>

I livelli in questa API rappresentano i livelli di incorporamento in base all'algoritmo bidirezionale Unicode. Il bit di ordine basso (valore pari/dispari) indica la direzione visiva.

I livelli possono essere valori astratti quando vengono usati per gli paraLevel argomenti e embeddingLevels di setPara(). There: <ul><li>il bit di ordine elevato di un embeddingLevels[] valore indica se l'applicazione using specifica il livello di un carattere per eseguire l'override di qualsiasi implementazione bidi la risolverà.</li><li>paraLevel può essere impostato sui valori LEVEL_DEFAULT_LTR pseudolivello e LEVEL_DEFAULT_RTL.</li></ul>

Le costanti correlate non sono valori di livello reali e validi. DEFAULT_XXX può essere utilizzato per specificare un valore predefinito per il livello di paragrafo per quando il setPara() metodo lo determina, ma non esiste un carattere fortemente tipizzato nell'input.

Si noti che il valore per è pari e quello per LEVEL_DEFAULT_LTRLEVEL_DEFAULT_RTL è dispari, proprio come con i normali valori di livello LTR e RTL, questi valori speciali sono progettati in questo modo. Inoltre, l'implementazione presuppone che MAX_EXPLICIT_LEVEL sia strano.

Nota: i valori numerici delle costanti correlate non cambieranno: sono associati all'uso di valori di byte a 7 bit (più il bit di override) e del tipo di dati di byte in questa API.

<b>Vedere anche:</b><ul><li li>#LEVEL_DEFAULT_LTR<>#LEVEL_DEFAULT_RTL<li>#LEVEL_OVERRIDE<li li>#MAX_EXPLICIT_LEVEL<>#setPara</ul>

<h3>Basic concept: Reordering Mode</h3> Reordering mode values indica quale variante dell'algoritmo Bidi usare.

<b>Vedere anche:</b><ul><li li>#setReorderingMode<>#REORDER_DEFAULT<>#REORDER_NUMBERS_SPECIAL<>#REORDER_GROUP_NUMBERS_WITH_R<>#REORDER_RUNS_ONLY<>#REORDER_INVERSE_NUMBERS_AS_L<>#REORDER_INVERSE_LIKE_DIRECT<>#REORDER_INVERSE_FOR_NUMBERS_SPECIAL</ul>

<h3>Concetto di base: è possibile applicare< le opzioni di riordinamento delle opzioni/h3> durante le trasformazioni di testo Bidi.

<b>Vedere anche:</b><ul><li li>#setReorderingOptions<>#OPTION_DEFAULT<li>#OPTION_INSERT_MARKS<li li>#OPTION_REMOVE_CONTROLS<>#OPTION_STREAMING</ul>

<h4> Codice di esempio per l'API <Bidi di ICU /h4>

<h5>Rendering di un paragrafo con l'API< Bidi di ICU/h5>

Questo è il codice di esempio (ipotetico) che illustra come l'API ICU Bidi può essere usata per eseguire il rendering di un paragrafo di testo. Il codice di rendering dipende in modo elevato dal sistema grafico, pertanto questo codice di esempio deve fare molti presupposti, che possono o meno corrispondere alle proprietà di qualsiasi sistema grafico esistente.

I presupposti di base sono:

<ul><li>Rendering viene eseguito da sinistra a destra su una linea orizzontale.</li><li>Una sequenza di testo unidirezionale di tipo singolo può essere eseguito contemporaneamente. </li><li>Tale esecuzione di testo viene passata al sistema grafico con caratteri (unità di codice) in ordine logico.</li><li>L'algoritmo di interruzione di riga è molto complicato e dipendente dalle impostazioni locali, pertanto l'implementazione omessa da questo codice di esempio.</li></ul>

package android.icu.dev.test.bidi;

             import android.icu.text.Bidi;
             import android.icu.text.BidiRun;

             public class Sample {

                 static final int styleNormal = 0;
                 static final int styleSelected = 1;
                 static final int styleBold = 2;
                 static final int styleItalics = 4;
                 static final int styleSuper=8;
                 static final int styleSub = 16;

                 static class StyleRun {
                     int limit;
                     int style;

                     public StyleRun(int limit, int style) {
                         this.limit = limit;
                         this.style = style;
                     }
                 }

                 static class Bounds {
                     int start;
                     int limit;

                     public Bounds(int start, int limit) {
                         this.start = start;
                         this.limit = limit;
                     }
                 }

                 static int getTextWidth(String text, int start, int limit,
                                         StyleRun[] styleRuns, int styleRunCount) {
                     // simplistic way to compute the width
                     return limit - start;
                 }

                 // set limit and StyleRun limit for a line
                 // from text[start] and from styleRuns[styleRunStart]
                 // using Bidi.getLogicalRun(...)
                 // returns line width
                 static int getLineBreak(String text, Bounds line, Bidi para,
                                         StyleRun styleRuns[], Bounds styleRun) {
                     // dummy return
                     return 0;
                 }

                 // render runs on a line sequentially, always from left to right

                 // prepare rendering a new line
                 static void startLine(byte textDirection, int lineWidth) {
                     System.out.println();
                 }

                 // render a run of text and advance to the right by the run width
                 // the text[start..limit-1] is always in logical order
                 static void renderRun(String text, int start, int limit,
                                       byte textDirection, int style) {
                 }

                 // We could compute a cross-product
                 // from the style runs with the directional runs
                 // and then reorder it.
                 // Instead, here we iterate over each run type
                 // and render the intersections -
                 // with shortcuts in simple (and common) cases.
                 // renderParagraph() is the main function.

                 // render a directional run with
                 // (possibly) multiple style runs intersecting with it
                 static void renderDirectionalRun(String text, int start, int limit,
                                                  byte direction, StyleRun styleRuns[],
                                                  int styleRunCount) {
                     int i;

                     // iterate over style runs
                     if (direction == Bidi.LTR) {
                         int styleLimit;
                         for (i = 0; i &lt; styleRunCount; ++i) {
                             styleLimit = styleRuns[i].limit;
                             if (start &lt; styleLimit) {
                                 if (styleLimit &gt; limit) {
                                     styleLimit = limit;
                                 }
                                 renderRun(text, start, styleLimit,
                                           direction, styleRuns[i].style);
                                 if (styleLimit == limit) {
                                     break;
                                 }
                                 start = styleLimit;
                             }
                         }
                     } else {
                         int styleStart;

                         for (i = styleRunCount-1; i &gt;= 0; --i) {
                             if (i &gt; 0) {
                                 styleStart = styleRuns[i-1].limit;
                             } else {
                                 styleStart = 0;
                             }
                             if (limit &gt;= styleStart) {
                                 if (styleStart &lt; start) {
                                     styleStart = start;
                                 }
                                 renderRun(text, styleStart, limit, direction,
                                           styleRuns[i].style);
                                 if (styleStart == start) {
                                     break;
                                 }
                                 limit = styleStart;
                             }
                         }
                     }
                 }

                 // the line object represents text[start..limit-1]
                 static void renderLine(Bidi line, String text, int start, int limit,
                                        StyleRun styleRuns[], int styleRunCount) {
                     byte direction = line.getDirection();
                     if (direction != Bidi.MIXED) {
                         // unidirectional
                         if (styleRunCount &lt;= 1) {
                             renderRun(text, start, limit, direction, styleRuns[0].style);
                         } else {
                             renderDirectionalRun(text, start, limit, direction,
                                                  styleRuns, styleRunCount);
                         }
                     } else {
                         // mixed-directional
                         int count, i;
                         BidiRun run;

                         try {
                             count = line.countRuns();
                         } catch (IllegalStateException e) {
                             e.printStackTrace();
                             return;
                         }
                         if (styleRunCount &lt;= 1) {
                             int style = styleRuns[0].style;

                             // iterate over directional runs
                             for (i = 0; i &lt; count; ++i) {
                                 run = line.getVisualRun(i);
                                 renderRun(text, run.getStart(), run.getLimit(),
                                           run.getDirection(), style);
                             }
                         } else {
                             // iterate over both directional and style runs
                             for (i = 0; i &lt; count; ++i) {
                                 run = line.getVisualRun(i);
                                 renderDirectionalRun(text, run.getStart(),
                                                      run.getLimit(), run.getDirection(),
                                                      styleRuns, styleRunCount);
                             }
                         }
                     }
                 }

                 static void renderParagraph(String text, byte textDirection,
                                             StyleRun styleRuns[], int styleRunCount,
                                             int lineWidth) {
                     int length = text.length();
                     Bidi para = new Bidi();
                     try {
                         para.setPara(text,
                                      textDirection != 0 ? Bidi.LEVEL_DEFAULT_RTL
                                                         : Bidi.LEVEL_DEFAULT_LTR,
                                      null);
                     } catch (Exception e) {
                         e.printStackTrace();
                         return;
                     }
                     byte paraLevel = (byte)(1 &amp; para.getParaLevel());
                     StyleRun styleRun = new StyleRun(length, styleNormal);

                     if (styleRuns == null || styleRunCount &lt;= 0) {
                         styleRuns = new StyleRun[1];
                         styleRunCount = 1;
                         styleRuns[0] = styleRun;
                     }
                     // assume styleRuns[styleRunCount-1].limit&gt;=length

                     int width = getTextWidth(text, 0, length, styleRuns, styleRunCount);
                     if (width &lt;= lineWidth) {
                         // everything fits onto one line

                         // prepare rendering a new line from either left or right
                         startLine(paraLevel, width);

                         renderLine(para, text, 0, length, styleRuns, styleRunCount);
                     } else {
                         // we need to render several lines
                         Bidi line = new Bidi(length, 0);
                         int start = 0, limit;
                         int styleRunStart = 0, styleRunLimit;

                         for (;;) {
                             limit = length;
                             styleRunLimit = styleRunCount;
                             width = getLineBreak(text, new Bounds(start, limit),
                                                  para, styleRuns,
                                                  new Bounds(styleRunStart, styleRunLimit));
                             try {
                                 line = para.setLine(start, limit);
                             } catch (Exception e) {
                                 e.printStackTrace();
                                 return;
                             }
                             // prepare rendering a new line
                             // from either left or right
                             startLine(paraLevel, width);

                             if (styleRunStart &gt; 0) {
                                 int newRunCount = styleRuns.length - styleRunStart;
                                 StyleRun[] newRuns = new StyleRun[newRunCount];
                                 System.arraycopy(styleRuns, styleRunStart, newRuns, 0,
                                                  newRunCount);
                                 renderLine(line, text, start, limit, newRuns,
                                            styleRunLimit - styleRunStart);
                             } else {
                                 renderLine(line, text, start, limit, styleRuns,
                                            styleRunLimit - styleRunStart);
                             }
                             if (limit == length) {
                                 break;
                             }
                             start = limit;
                             styleRunStart = styleRunLimit - 1;
                             if (start &gt;= styleRuns[styleRunStart].limit) {
                                 ++styleRunStart;
                             }
                         }
                     }
                 }

                 public static void main(String[] args)
                 {
                     renderParagraph("Some Latin text...", Bidi.LTR, null, 0, 80);
                     renderParagraph("Some Hebrew text...", Bidi.RTL, null, 0, 60);
                 }
             }

per android.icu.text.Bidi.

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
Bidi()

Allocare un Bidi oggetto .

Bidi(Char[], Int32, Byte[], Int32, Int32, BidiOptions)

Creare Bidi dal testo, dall'incorporamento e dalle informazioni sulla direzione specificate.

Bidi(IAttributedCharacterIterator)

Crea Bidi dal paragrafo di testo specificato.

Bidi(Int32, Int32)

Allocare un Bidi oggetto con memoria preallocata per le strutture interne.

Bidi(IntPtr, JniHandleOwnership)

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
Bidi(String, BidiOptions)

Creare Bidi dal paragrafo specificato di testo e direzione di base.

Campi

Nome Descrizione
DirectionDefaultLeftToRight
Obsoleti.

Costante che indica che la direzione di base dipende dal primo carattere direzionale sicuro nel testo in base all'algoritmo bidirezionale Unicode.

DirectionDefaultRightToLeft
Obsoleti.

Costante che indica che la direzione di base dipende dal primo carattere direzionale sicuro nel testo in base all'algoritmo bidirezionale Unicode.

DirectionLeftToRight
Obsoleti.

Costante che indica la direzione di base è da sinistra a destra.

DirectionRightToLeft
Obsoleti.

Costante che indica la direzione di base è da destra a sinistra.

DoMirroring

bit di opzione per writeReordered(): sostituire i caratteri con la proprietà "con mirroring" in RTL eseguita dai mapping delle immagini mirror

InsertLrmForNumeric

bit di opzione per writeReordered(): racchiudere l'esecuzione con LRMs, se necessario; questo fa parte dell'algoritmo "Inverse Bidi" approssimativo

KeepBaseCombining

bit di opzione per writeReordered(): mantenere la combinazione dei caratteri dopo l'esecuzione dei caratteri di base nelle esecuzioni RTL

LevelDefaultLtr

Impostazione del livello di paragrafo

LevelDefaultRtl

Impostazione del livello di paragrafo

LevelOverride

Flag di bit per l'input a livello.

Ltr

Testo da sinistra a destra.

MapNowhere
Obsoleti.

Valore speciale che può essere restituito dai metodi di mapping quando un indice logico non ha un indice visivo corrispondente o viceversa.

MaxExplicitLevel

Livello massimo di incorporamento esplicito.

Mixed

Testo direzionale misto.

Neutral

Nessun testo direzionale.

OptionDefault
Obsoleti.

Valore dell'opzione per setReorderingOptions: disabilitare tutte le opzioni che possono essere impostate con questo metodo

OptionInsertMarks
Obsoleti.

Bit di opzione per setReorderingOptions: inserire i contrassegni Bidi (LRM o RLM) quando necessario per garantire il risultato corretto di un riordino in un ordine logico

OptionRemoveControls
Obsoleti.

Bit di opzione per setReorderingOptions: rimuovere i caratteri di controllo Bidi

OptionStreaming
Obsoleti.

Bit di opzione per setReorderingOptions: elaborare l'output come parte di un flusso da continuare

OutputReverse

bit di opzione per writeReordered(): scrivere l'output in ordine inverso

RemoveBidiControls

option bit for writeReordered(): remove Bidi control characters (this does not affect INSERT_LRM_FOR_NUMERIC)

ReorderDefault

Modalità di riordinamento: algoritmo Logico normale a Visual Bidi in base a Unicode.

ReorderGroupNumbersWithR

Modalità di riordinamento: da logica a oggetto visivo raggruppamento di numeri con caratteri R adiacenti (algoritmo reversibile).

ReorderInverseForNumbersSpecial

Modalità di riordinamento: algoritmo Bidi (Visual to Logical) inverso per l'algoritmo REORDER_NUMBERS_SPECIAL Bidi.

ReorderInverseLikeDirect

Modalità di riordinamento: oggetto visivo a algoritmo logico equivalente all'algoritmo logico normale a visuale.

ReorderInverseNumbersAsL

Modalità di riordinamento: oggetto visivo a algoritmo logico che gestisce numeri come L (stesso algoritmo selezionato da setInverse(true).

ReorderNumbersSpecial

Modalità di riordinamento: algoritmo da logico a oggetto visivo che gestisce i numeri in modo da simulare il comportamento di Windows XP.

ReorderRunsOnly

Modalità di riordinamento: il riordinamento viene eseguito solo per trasformare una stringa LTR logica nella stringa RTL logica con lo stesso display o viceversa.

Rtl

Testo da destra a sinistra.

Proprietà

Nome Descrizione
BaseLevel

Restituisce il livello di base (0 se da sinistra a destra, 1 se da destra a sinistra).

Class

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
CustomClassifier

Ottiene il classificatore personalizzato corrente utilizzato per la determinazione della classe Bidi. -oppure- Impostare un classificatore Bidi personalizzato usato dall'implementazione UBA per la determinazione della classe Bidi.

Direction

Ottiene la direzionalità del testo.

Handle

Handle per l'istanza di Android sottostante.

(Ereditato da Object)
Inverse

Questo Bidi oggetto è impostato per eseguire l'algoritmo Bidi inverso? -oppure- Modificare l'operazione dell'algoritmo Bidi in modo che approssima un algoritmo "Bidi inverso".

IsLeftToRight

Restituisce true se la riga è tutto il testo da sinistra a destra e la direzione di base è da sinistra a destra.

IsMixed

Restituisce true se la riga non è da sinistra a destra o da destra a sinistra.

IsOrderParagraphsLTR

Questo Bidi oggetto è impostato per allocare il livello 0 ai separatori di blocco in modo che i paragrafi successivi progrediscano da sinistra a destra?

IsRightToLeft

Restituisce true se la riga è tutto testo da destra a sinistra e la direzione di base è da destra a sinistra

JniIdentityHashCode

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

(Ereditato da Object)
JniManagedPeerState

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Ereditato da JavaObject)
JniPeerMembers

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
Length

Ottiene la lunghezza del testo.

ParaLevel

Ottenere il livello di paragrafo del testo.

PeerReference

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

(Ereditato da Object)
ProcessedLength

Ottenere la lunghezza del testo di origine elaborato dall'ultima chiamata a setPara().

ReorderingMode

Qual è la modalità di riordinamento richiesta per un determinato oggetto Bidi? -oppure- Modificare l'operazione dell'algoritmo Bidi in modo che implementi alcune varianti all'algoritmo Bidi di base o approssima un algoritmo "Bidi inverso", a seconda di valori diversi della "modalità di riordinamento".

ReorderingOptions

Quali sono le opzioni di riordinamento applicate a un determinato oggetto Bidi? -oppure- Specificare quale delle opzioni di riordinamento deve essere applicata durante le trasformazioni Bidi.

ResultLength

Ottenere la lunghezza del testo riordinato risultante dall'ultima chiamata a setPara().

RunCount

Restituisce il numero di esecuzioni di livello.

TextAsString

Ottenere il testo.

ThresholdClass

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
ThresholdType

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.

Metodi

Nome Descrizione
BaseIsLeftToRight()

Restituisce true se la direzione di base è da sinistra a destra

Clone()

Crea e restituisce una copia di questo oggetto.

(Ereditato da Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Ereditato da JavaObject)
CountParagraphs()

Ottiene il numero di paragrafi.

CountRuns()

Ottiene il numero di esecuzioni.

CreateLineBidi(Int32, Int32)

Creare un oggetto Bidi che rappresenta le informazioni bidi su una riga di testo all'interno del paragrafo rappresentato dall'oggetto Bidi corrente.

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()

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Ereditato da JavaObject)
Equals(Object)

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Ereditato da JavaObject)
Equals(Object)

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

(Ereditato da Object)
GetBaseDirection(ICharSequence)

Ottenere la direzione di base del testo fornito in base all'algoritmo bidirezionale Unicode.

GetBaseDirection(String)

Ottenere la direzione di base del testo fornito in base all'algoritmo bidirezionale Unicode.

GetCustomizedClass(Int32)

Recupera la classe Bidi per un determinato punto di codice.

GetHashCode()

Restituisce un valore di codice hash per l'oggetto .

(Ereditato da Object)
GetLevelAt(Int32)

Ottenere il livello per un carattere.

GetLevels()

Ottiene una matrice di livelli per ogni carattere.

GetLogicalIndex(Int32)

Ottenere la posizione del testo logico da una posizione visiva.

GetLogicalMap()

Ottenere una mappa dell'indice da logica a oggetto visivo (matrice) per i caratteri nell'oggetto Bidi (paragrafo o riga).

GetLogicalRun(Int32)

Ottenere un'esecuzione logica.

GetParagraph(Int32)

Ottiene un paragrafo, dato una posizione all'interno del testo.

GetParagraphByIndex(Int32)

Ottiene un paragrafo, dato l'indice di questo paragrafo.

GetParagraphIndex(Int32)

Ottiene l'indice di un paragrafo, dato una posizione all'interno del testo.

GetRunLevel(Int32)

Restituisce il livello dell'n° esecuzione logica in questa riga.

GetRunLimit(Int32)

Restituisce l'indice del carattere oltre la fine dell'ultima esecuzione logica in questa riga, come offset dall'inizio della riga.

GetRunStart(Int32)

Restituisce l'indice del carattere all'inizio dell'na esecuzione logica in questa riga, come offset dall'inizio della riga.

GetText()

Ottenere il testo.

GetVisualIndex(Int32)

Ottenere la posizione visiva da una posizione di testo logico.

GetVisualMap()

Ottenere una mappa dell'indice da oggetto visivo a logica (matrice) per i caratteri nell'oggetto Bidi (paragrafo o riga).

GetVisualRun(Int32)

Ottenere un BidiRun oggetto in base al relativo indice.

InvertMap(Int32[])

Invertire una mappa di indice.

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)
OrderParagraphsLTR(Boolean)

Specificare se i separatori di blocchi devono essere allocati al livello zero, in modo che i paragrafi successivi progrediscano da sinistra a destra.

ReorderLogical(Byte[])

Si tratta di un metodo pratico che non usa un Bidi oggetto .

ReorderVisual(Byte[])

Si tratta di un metodo pratico che non usa un Bidi oggetto .

ReorderVisually(Byte[], Int32, Object[], Int32, Int32)

Riordinare gli oggetti nella matrice in ordine visivo in base ai livelli.

RequiresBidi(Char[], Int32, Int32)

Restituisce true se il testo specificato richiede l'analisi bidi.

SetContext(String, String)

Impostare il contesto prima di una chiamata a setPara().

SetHandle(IntPtr, JniHandleOwnership)

Imposta la proprietà Handle.

(Ereditato da Object)
SetLine(Int32, Int32)

setLine() restituisce un Bidi oggetto per contenere le informazioni di riordinamento, in particolare i livelli risolti, per tutti i caratteri in una riga di testo.

SetPara(Char[], SByte, Byte[])

Eseguire l'algoritmo Unicode Bidi.

SetPara(IAttributedCharacterIterator)

Eseguire l'algoritmo Unicode Bidi su un determinato paragrafo, come definito nell'allegato standard Unicode n. 9, versione 13, descritto anche in Standard Unicode versione 4.

SetPara(String, SByte, Byte[])

Eseguire l'algoritmo Unicode Bidi.

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Ereditato da JavaObject)
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)
WriteReordered(BidiOptions)

Accettare un Bidi oggetto contenente le informazioni di riordinamento per una parte di testo (uno o più paragrafi) impostati da setPara() o per una riga di testo impostata da setLine() e restituire una stringa contenente il testo riordinato.

WriteReverse(String, BidiOptions)

Invertire unTo-Left esecuzione di testo Unicode.

Implementazioni dell'interfaccia esplicita

Nome Descrizione
IJavaPeerable.Disposed()

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Ereditato da JavaObject)
IJavaPeerable.Finalized()

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Ereditato da JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Ereditato da JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Ereditato da JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Ereditato da JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Ereditato da JavaObject)

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)

<Algoritmo h2>Bidi per ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
TryJavaCast<TResult>(IJavaPeerable, TResult)

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

Si applica a