UITextView で改行文字が自動変換される : iPhone プログラミング
PROGRAM
.auto-style1 {
white-space: nowrap;
}
.auto-style2 {
background-color: #FFE3B7 !important;
}
UITextView で改行文字が自動変換される
UITextView の text プロパティに改行を含む文字列を設定したら、改行文字が自動的に変換される様子でした。
今回の環境は Xcode 4.6.2 (iOS SDK 6.1) だったのですけど、CRLF (\r\n) で指定した改行文字を含むテキストを UITextView に設定してみたところ、改行文字が LF (\n) に統一されました。CR (\r) だけでの改行も LF (\n) に変換されます。
他のコントロールでも変換されるかどうか調べてみると、次のようになりました。
ちなみに UIWebView には -loadHTMLString:baseURL: でテキストを設定して、それを UIWebView で表示中のソースコードを取得する で紹介した方法で取り出して検証しています。
CR | LF | CRLF | |
---|---|---|---|
NSString | CR | LF | CRLF |
UILabel | CR | LF | CRLF |
UITextField | CR | LF | CRLF |
UITextView | LF | LF | LF |
UIWebView | LF | LF | LF |
このように UITextView と UIWebView のときに、改行コードが LF (\n) に統一される様子でした。CRLF (\r\n) の 2 バイト改行文字も、LF (\n) の 1 バイトだけに丸められます。
改行コードを目印にして処理を行うプログラムなどの場合は、念頭に置いておきたいところですね。
[ もどる ]