AlphabeticIndex クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。
[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
- 継承
- 属性
- 実装
注釈
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 直接使用をサポートすることも、ローカライズされた照合順序をサポートしていないクライアントで使用することもできます。 UI でのインデックスの外観の例を次に示します。
<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
...
このクラスは、UI の "インデックス" として使用するラベルの一覧、つまり、ユーザーがより大きな "ターゲット" リストのセグメント (バケット) を表示できるようにするクリック可能な文字 (または文字シーケンス) のリストを生成できます。 つまり、各ラベルはターゲット リスト内のバケットに対応します。バケット内のすべてが文字以上です (ロケールの照合順序に従います)。 文字列はインデックスに追加できます。それらは、適切なバケットで並べ替えられた順序になります。
このクラスでは、最初の (アンダーフロー)、最後の (オーバーフロー) の後、およびスクリプト間 (インフロー) の前に文字列のバケットを持つこともサポートされています。 たとえば、インデックスがロシア語と英語のラベルで構成されている場合、ギリシャ語の文字は他の 2 つのスクリプト間のインフロー バケットに分類されます。
<em>Note:</em> ユーザーの言語の文字だけでなく、ASCII 文字やラテン文字が多い場合は、addLabels(ULocale.English) を呼び出することをお勧めします。
<h2>Direct Use</h2>
インデックスを直接作成する例を次に示します。 "show..."以下のメソッドは、使用方法を示すためだけにあります。
// 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());
}
呼び出し元は、このクラスを使用して異なる UI を構築できます。 たとえば、バケットが空の場合は、インデックス文字を省略したり、灰色表示にしたりすることができます。 小さいバケットは、次のようなサイズに基づいて組み合わせることもできます。
<b>... A-F G-N O-Z ...</b>
<h2>Client サポート</h2>
呼び出し元は、 AlphabeticIndex.ImmutableIndexまたは AlphabeticIndex 自体を使用して、AlphabeticIndex 機能をサポートしていないクライアントでの並べ替えをサポートすることもできます。
ImmutableIndex は、不変とスレッド セーフの両方です。 対応する AlphabeticIndex メソッドは、インデックス バケットを "遅延" して構築するため、スレッド セーフではありません。 <ul><li>ImmutableIndex.getBucket(index) を使用すると、すべてのバケットとそのラベルとラベルの種類にランダムにアクセスできます。 <li>AlphabeticIndex.getBucketLabels() またはいずれかのクラスのバケット反復子を使用して、"..."、"A"、"B",...,などのラベルのリストを取得し、そのリストをクライアントに送信できます。 <li>クライアントが新しい名前を持っている場合は、その名前をサーバーに送信します。 サーバーは次のメソッドを呼び出し、bucketIndex と collationKey をクライアントに伝える必要があります。
int bucketIndex = index.getBucketIndex(name);
String label = immutableIndex.getBucket(bucketIndex).getLabel(); // optional
RawCollationKey collationKey = collator.getRawCollationKey(name, null);
<li>クライアントは bucketIndex の名前 (および関連情報) をバケットに格納します。 collationKey は、バイナリ比較と比較して適切なローカライズされた結果を生成できるバイト シーケンスです。</li></ul>
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
コンストラクター
| 名前 | 説明 |
|---|---|
| AlphabeticIndex(Locale) |
インデックス オブジェクトを作成します。 |
| AlphabeticIndex(RuleBasedCollator) |
特定のコレーターを使用する AlphabeticIndex を作成します。 |
| AlphabeticIndex(ULocale) |
インデックス オブジェクトを作成します。 |
プロパティ
| 名前 | 説明 |
|---|---|
| BucketCount |
インデックス内のバケットの数を返します。 |
| BucketLabels |
ラベルを取得します。 |
| Class |
この |
| Collator |
内部で使用されるコレーターの複製を取得します。 |
| Handle |
基になる Android インスタンスへのハンドル。 (継承元 Object) |
| InflowLabel |
他のラベル 間 の省略されたバケットに使用される既定のラベルを取得します。 |
| JniIdentityHashCode |
相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。 (継承元 Object) |
| JniManagedPeerState |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 (継承元 JavaObject) |
| JniPeerMembers |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 |
| MaxLabelCount |
インデックス内のラベルの数の制限を取得します。 |
| OverflowLabel |
オーバーフローのために IndexCharacters のロケールで使用される既定のラベルを取得します。たとえば、次の最初の項目を取得します。 |
| PeerReference |
このJava ピアの JNI オブジェクト参照を取得します。 (継承元 Object) |
| RecordCount |
インデックス内のレコードの数 (つまり、個別の < の合計数) を返します。name,data>addRecord(. |
| ThresholdClass |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 (継承元 Object) |
| ThresholdType |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 (継承元 Object) |
| UnderflowLabel |
アンダーフロー用の IndexCharacters のロケールで使用される既定のラベル (例: X Y Z 内の最後の項目) を取得します。 |
メソッド
| 名前 | 説明 |
|---|---|
| AddLabels(Locale[]) |
(ロケール以外の) インデックス文字をさらに追加する |
| AddLabels(ULocale[]) |
(ロケール以外の) インデックス文字をさらに追加する |
| AddLabels(UnicodeSet) |
(ロケール以外の) インデックス文字をさらに追加する |
| AddRecord(ICharSequence, Object) |
レコード (名前とデータ) をインデックスに追加します。 |
| AddRecord(String, Object) |
レコード (名前とデータ) をインデックスに追加します。 |
| BuildImmutableIndex() |
データ レコードを使用せずに、このインスタンスの不変のスレッド セーフ バージョンを構築します。 |
| ClearRecords() |
インデックスをクリアします。 |
| Clone() |
このオブジェクトのコピーを作成して返します。 (継承元 Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 (継承元 JavaObject) |
| Dispose() |
このJava ピアによって保持されているリソースを解放します。 (継承元 Object) |
| Dispose(Boolean) |
このJava ピアによって保持されているリソースを解放します。 (継承元 Object) |
| DisposeUnlessReferenced() |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 (継承元 JavaObject) |
| Equals(Object) |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 (継承元 JavaObject) |
| Equals(Object) |
他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。 (継承元 Object) |
| GetBucketIndex(ICharSequence) |
指定された名前のバケット番号を取得します。 |
| GetBucketIndex(String) |
指定された名前のバケット番号を取得します。 |
| GetHashCode() |
オブジェクトのハッシュ コード値を返します。 (継承元 Object) |
| Iterator() |
バケットに対する反復子を返します。 |
| JavaFinalize() |
古い.
オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。 (継承元 Object) |
| Notify() |
このオブジェクトのモニターで待機している 1 つのスレッドを起動します。 (継承元 Object) |
| NotifyAll() |
このオブジェクトのモニターで待機しているすべてのスレッドを起動します。 (継承元 Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
Handle プロパティを設定します。 (継承元 Object) |
| SetInflowLabel(String) |
inflowLabel ラベルを設定する |
| SetMaxLabelCount(Int32) |
インデックス内のラベルの数に制限を設定します。 |
| SetOverflowLabel(String) |
オーバーフロー ラベルを設定する |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 (継承元 JavaObject) |
| SetUnderflowLabel(String) |
underflowLabel ラベルを設定する |
| ToArray<T>() |
このJava配列ラッパーからマネージド配列を作成します。 (継承元 Object) |
| ToString() |
オブジェクトの文字列形式を返します。 (継承元 Object) |
| UnregisterFromRuntime() |
相互運用ランタイムからこのJava ピアの登録を解除します。 (継承元 Object) |
| Wait() |
現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。 (継承元 Object) |
| Wait(Int64, Int32) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
| Wait(Int64) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
明示的なインターフェイスの実装
| 名前 | 説明 |
|---|---|
| IJavaPeerable.Disposed() |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 (継承元 JavaObject) |
| IJavaPeerable.Finalized() |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 (継承元 JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 (継承元 JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 (継承元 JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 (継承元 JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 (継承元 JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 |
拡張メソッド
| 名前 | 説明 |
|---|---|
| GetJniTypeName(IJavaPeerable) |
インスタンス |
| JavaAs<TResult>(IJavaPeerable) |
|
| JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
| JavaCast<TResult>(IJavaObject) |
AlphabeticIndex では、特定の言語に適した UI インデックスの作成がサポートされています。 |
| ToEnumerable(IIterable) |
Java IIterableを反復処理するIEnumerableを返します。これにより、 |
| ToEnumerable<T>(IIterable) |
Java IIterableを反復処理し、各要素を |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
|