XCode 15.2 日本語化計画:New Human Interface Guideline
属性の名前と型を定義する型。
このプロトコルに準拠する型をインスタンス化することはありません。むしろ、動的メンバー検索では、AttributeScope 型パラメータを使用するときに、AttributedString サブタイプのキーパスを検索するための基礎としてこの型を使用します。CodableAttributedStringKey (型が完全にコーディング可能でない場合は DecodableAttributedStringKey / EncodableAttributedStringKey) にも準拠する場合、AttributedStringKey は、AttributedString のどの属性がコード化または復号化をサポートするかを記述します。
属性所有者 (通常はフレームワーク) は、以下のようなキーを宣言します。
呼び出し元はこれらの型を使用して、属性付き文字列から属性値を取得できますが、通常はそれらを名前で参照する必要があります。属性の所有者は、AttributeScope に準拠する 1 つ以上の構造体を作成することでこれを可能にし、AttributedStringKey 型にマッピングするそれらの属性の短縮名を提供します。以下の例は、これを行う方法を示しています。
このように AttributeScope を拡張した後、AttributeDynamicLookup を拡張して、呼び出し元が myAttributedString.outlineColor = .red などの動的メンバー検索構文を使用できるようにします。
キーの名前。
必須
キー値の型。
必須
インスタンスのテキスト表現。
static var inheritedByAddedText: Bool
必須 デフォルトの実装が提供されます。
static var invalidationConditions: Set<AttributedString.AttributeInvalidationCondition>?
必須 デフォルトの実装が提供されます。
static var runBoundaries: AttributedString.AttributeRunBoundaries?
必須 デフォルトの実装が提供されます。
MarkdownDecodableAttributedStringKey
ObjectiveCConvertibleAttributedStringKey
subscript<T>(T.Type) -> T.Value?
指定されたキーに対応する属性を返します。
subscript<K>(dynamicMember: KeyPath<AttributeDynamicLookup, K>) -> K.Value?
指定されたキーパスに対応する属性を返します。
指定されたキーパスに対応する属性コンテナを返します。
属性チェーンの構築の一部として、変更された属性コンテナを返します。
静的メソッドとして使用するために、属性チェーンの構築の一部として、変更された属性コンテナを返します。
struct AttributeContainer.Builder
属性値を設定して属性コンテナを反復的に構築する型。