UITextView で改行文字が自動変換される : iPhone プログラミング

PROGRAM


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 バイトだけに丸められます。

改行コードを目印にして処理を行うプログラムなどの場合は、念頭に置いておきたいところですね。

[ もどる ]