アプリケーション開発のために使われる主要フレームワークの日本語情報です。変更不可な属性付き文字列のクラスです。作成・初期化した後、その内容を変更することはできません。変更可能な属性付き文字列はNSMutableAttributedStringクラスを使用します。利用可能なiOSのバージョンが3.2以降となっているように、iPadの登場とともに使えるようになったクラスです。文字の属性とはフォント、サイズ、色、太字などの文字スタイルに加え、段落スタイル、日本語での縦書き表示の際の文字の向きなどが含まれます。iOS5.1ではUIKitには描画するAPIは無いので、iOSではCoreTextフレームワークとともにこのクラスを使用します。6で描画する関数ができました。initWithString:attributes)があります。3番目の文字列と属性の辞書から作る方法だと柔軟に設定を変更することができます。辞書で設定できるキーの一覧はCTStringAttributes.hにあります。一例を挙げると、文字色(kCTForegroundColorAttributeName)、下線の形状(kCTUnderlineStyleAttributeName)、リガチャを行うか(kCTLigatureAttributeName)などです。@"CTForegroundColor"や@"NSFont"などの文字列定数もキーとして使うことができます。string)を使います。length)を使います。attributesAtIndex:effectiveRange)メソッドを使います。attributesAtIndex:の引数に調べたい文字の番号(0からはじまる)を渡し、effectiveRange:の引数にはNSRangeのポインタを渡します。メソッドを呼び出すと属性の辞書が返され、NSRangeに同じ属性を持つ範囲が返されます。attributesAtIndex:longestEffectiveRange:inRange)もあります。attribute:atIndex:effectiveRange)メソッドを使います。attribute:にkCTForegroundColorAttributeName、kCTUnderlineStyleAttributeNameなどの属性を渡してやります。attribute:atIndex:longestEffectiveRange:inRange)があります。isEqualToAttributedString)メソッドを使います。attributedSubstringFromRange)を使います。enumerateAttributesInRange:options:usingBlock)メソッドを使います。enumerateAttribute:inRange:options:usingBlock)を使います。この二つのメソッドは同じ属性の範囲を順番に返してくれますので、同じ属性の物に対して次々と処理を行う場合に便利です。initWithString:@"みなさん、こんにちは。\nこれはNSAttributedStringとCoreTextを使って、縦書き表示をするサンプルです。\n割と簡単に表示できるでしょ?\nいろいろ試してみてください。initWithString:@"ここから属性を変えて追加した赤い文字です。属性付き文字列を返します。読者になる関連記事NSScreenクラスNSWorkspaceクラスNSWindowクラスはてなブログをはじめよう!jjj777さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。